Re: How to load the jna jar file before cffi?
Mirko Vukovic <[email protected]>
| Newsgroups | gmane.editors.j.devel |
|---|---|
| Message-ID | <CAO73BABKQCaeukDW051ed-TMAfQgOFJ9+UGgd8gW2Vg+38k6gA@mail.gmail.com> |
Hi Mark, Thanks for responding. See below for my replies On Thu, May 11, 2017 at 2:23 AM Mark Evenson <[email protected]> wrote: > > > 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