[armedbear-ticket] [armedbear] #149: Cannot load ASDF systems from *.asd definition in base of JAR hierarchy

armedbear armedbear-devel at common-lisp.net
Thu May 12 12:19:53 UTC 2011


#149: Cannot load ASDF systems from *.asd definition in base of JAR hierarchy
-------------------------------+--------------------------------------------
 Reporter:  mevenson           |       Owner:  mevenson
     Type:  defect             |      Status:  new     
 Priority:  minor              |   Milestone:  0.26    
Component:  other              |     Version:  1.0     
 Keywords:  asdf url-pathname  |  
-------------------------------+--------------------------------------------
 For an ASDF definition packaged in a JAR file in the topmost directory,
 viz
 {{{
 mama:~/work/abcl/bugs$ jar tfv trivial.jar
     76 Thu May 12 13:58:30 CEST 2011 trivial.asd
     52 Thu May 12 13:58:52 CEST 2011 trivial.lisp
 }}}

 The ASDF definition cannot be properly loaded after placing
 "jar:file:~/work/abcl/bugs/trivial.jar!/" in the ASDF:*CENTRAL-REGISTRY*.
 One can see that something has gone wrong in the ASDF/MERGE-PATHNAMES with
 URL-PATHNAMES as after the unsucessful load the following shows that ASDF
 has thrown away the JAR-PATHNAME reference

 {{{
 CL-USER> (asdf:component-pathname (asdf:find-system :trivial))
 #P"/Users/evenson/work/abcl/"
 }}}

 The workaround is simple:  always package ASDF definition in at least one
 top-level directory, viz:

 {{{
 mama:~/work/abcl/bugs$ jar tfv trivial.jar
      0 Thu May 12 14:18:18 CEST 2011 META-INF/
     60 Thu May 12 14:18:18 CEST 2011 META-INF/MANIFEST.MF
      0 Thu May 12 13:58:52 CEST 2011 trivial/
     76 Thu May 12 13:58:30 CEST 2011 trivial/trivial.asd
     52 Thu May 12 13:58:52 CEST 2011 trivial/trivial.lisp
 }}}

 When I get a change, I'll go through the URL-PATHNAME code with ASDF to
 understand where this is breaking.

-- 
Ticket URL: <http://trac.common-lisp.net/armedbear/ticket/149>
armedbear <http://common-lisp.net/project/armedbear>
armedbear


More information about the armedbear-ticket mailing list