On 2015/8/1 19:30, Ralph Ritoch wrote: […]
I wasn't aware that ABCL already has an extensibility system for the lifecycle, such as SYS:*MODULE-PROVIDER-FUNCTIONS*. If that can be used to override the default places to search for the abcl-contrib packages, than great. I didn't notice it in the code I was looking at. The core problem that needs to be solved is making a reasonable deployment system for distributed single-jar (uberjar) applications.
[…]
An additional mechanism for modifying ABCL behavior at startup lies in the ability to [add arbitrary code to the contents of system.lisp][1]. One could use this to install an additional hook to SYS:*MODULE-PROVIDER-FUNCTIONS* which would be able to satisfy the (REQUIRE :abcl-contrib) by referring to PATHNAMEs within the current jar. Thus, one could boot an überjar without recourse to anything additional in ABCL.
[1]: http://abcl.org/trac/browser/trunk/abcl/abcl.properties.in#L13