On 5/10/17 22:24, Mirko Vukovic wrote:
> Hello,
>
> In order for CFFI to load, I need to load jna-4.2.2.jar.
>
> Right now, I have to do something like this:
stuff deleted
Such "manual" loading of the JNA should be not be necessary in the
default case of using ABCL-ASDF's Maven integration to download from the
network, which is what [the ABCL specific portion of][cffi] does.
[cffi]: https://github.com/cffi/cffi/blob/master/src/cffi-abcl.lisp#L37
The
(require :jna)
refers to the [jna.asd][] definition, which is then passed to ABCL-ASDF
for resolution.
[jna.asd]:
https://gitlab.common-lisp.net/abcl/abcl/blob/master/contrib/mvn/jna.asd
I don't have jna.asd anywhere on my computer
"All" that you need to do to get this to work is to have a version of
Maven installed. The [ABCL-ASDF][1] code should find the Maven
executable in the JVM process path with which it will introspect the
necessary operations needed to use the Mavane Aether infrastructure.
[1]:
https://gitlab.common-lisp.net/abcl/abcl/blob/master/contrib/abcl-asdf/maven-embedder.lisp
To go forward with your problems:
1. Do you have Maven installed or is there some reason in your
deployment scenario that you do not wish to use it?
I do have Maven installed and in path, as given by mvn.bat -v .
I looked at abcl-asdf in the provided link and did some checking from within ABCL.
The outputs of abcl-asdf::find-mvn, abcl-asdf::mvn-version were OK.
Interestingly, I don't have abcl-asdf:mvn-home defined. Is my asdf 3.1.7.27 obsolete?
2. Without trying to load CFFI, does the following form load JNA from a
fresh REPL?
(require :abcl-contrib)
returns NIL
(require :jna)
Triggers error:
Java exception 'java.lang.ClassNotFoundException: com.sun.jna.Native'.
My jna is under my home directory in
"c:/Users/977315/.m2/repository/net/java/dev/jna/jna/4.2.2/jna-4.2.2.jar"
That directory is non in CLASSPATH
Thanks,
Mirko