[armedbear-devel] loading from jar files

Alessio Stalla alessiostalla at gmail.com
Thu Jan 7 11:59:24 UTC 2010


On Thu, Jan 7, 2010 at 9:17 AM, Alan Ruttenberg
<alanruttenberg at gmail.com> wrote:
> Seems like the extension is ignored and either lisp or .abcls files are loaded.
> This means that .asd files are not (an error is thrown)
> It also means that requests for files that don't exist get satisfied,
> e.g. if you give it a bogus filetype but there is a .lisp or .abcl
> file present.
>
> e.g.
>
> (load "jar:file:/Users/alanr/repos/lsw/trunk/patches/test.jar!/bar/bar1.li")
> ; Loading jar:file:/Users/alanr/repos/lsw/trunk/patches/test.jar!/bar/bar1.li
> ...
>
> Whoops - there is no bar1.li, just bar1.lisp
>
> (load "jar:file:/Users/alanr/repos/lsw/trunk/patches/test.jar!/bar/bar.asd")
>
> The file #P"jar:file:/Users/alanr/repos/lsw/trunk/patches/test.jar!/bar/bar.asd"
> does not exist.
>
> Whoops - it does so!

I cannot reproduce it fully on trunk. I can load .asd files just fine.
I get the "bar.li" behaviour too - we should probably add .abcl or
.lisp only if the name has no extension, to avoid confusion; that's
what sbcl does, and probably most other lisps.

I recently modified readFunctionBytes in Lisp.java to be able to load
stuff from remote jars (i.e. when the protocol is jar:x and x is not
"file"); that may have something to do with it, and maybe with Mark's
test failures too.

Alessio




More information about the armedbear-devel mailing list