• mevenson@1c010e3e-69d0-11dd-93a8-456734b0d56f's avatar
    abcl-asdf: introduce JDK-JAR object to describe JDK tags (Alan Ruttenberg) · a5b536f7
    We introduce an ASDF component JDK-JAR, a jar file where the pathname
    and name are relative to the 'java.home' property of the executing
    Note that the use of JDK-JAR consistutes an experimental interface
    with a lot of potential problems going forward.  We note some of those
    issues for further consideration:
    1) Java9 does away with the packaging of system tools in jar files,
    using the Java module system to provide "optimized" access to system
    resources.  Therefore, a better abstraction would be to somehow
    describe the artifacts that need to be loaded to satisfy the
    dependencies, and then provide mappings to strategies that locate and
    load them within the JDK filesystem.  c.f. <http://abcl.org/trac/ticket/423>.
    2) The structure of the 'java.home' directory varies in unknown ways
    between JDK versions and across platforms, making the use of JDK-JAR
    relative pathnames need special casing for various situations.
    3) ABCL may be run on a JRE runtimes which have a different directory
    structure than a JDK, most notably missing the 'tools.jar' artifact.
    4) Given the problems arising from points 3 and 4, meaningful
    conditions and appropiate restarts should be emitted by ABCL-ASDF when
    it cannot satisfy JDK-JAR dependencies.  This machinery should also be
    extended to the other major current deficiency in ABCL-ASDF lack of
    intellible errors/meaningful restarts when Maven cannot be located.
    Despite these problems, it is more useful to experiment with being
    able to reference JDK artifacts in ABCL-ASDF definitions than not, so
    we include JDK-JAR as an experimental feature.
    We need some way to mark the JDK-JAR feature as experimental.  The
    easiest way forward would be to split it off into a separate file
    compilation unit with appropiate comments.
    Merges <https://github.com/armedbear/abcl/pull/35/files>.
Last commit
Last update
t Loading commit data...
README.markdown Loading commit data...
abcl-asdf-tests.asd Loading commit data...
abcl-asdf.asd Loading commit data...
abcl-asdf.lisp Loading commit data...
asdf-jar.lisp Loading commit data...
maven-embedder.lisp Loading commit data...
package.lisp Loading commit data...