In 1.2 symbols are found in a libraries associated with your class's
ClassLoader. Meaning: if Foo.bar was a native method then the symbol
Java_Foo_bar is searched in the set of libraries loaded by Foo's
ClassLoader. This was a bug fix that makes resilient field and method
ID caching in the presence of ClassLoaders.
If the symbols are in the a.out, you should be using RegisterNatives.
-Anand.
Costin Manolache <[EMAIL PROTECTED]> writes:
> Hi,
>
> JDK1.2 works great on my RedHat, everything is great (except fonts).
>
> My question:
> I use the invocation API to start a JVM from a C application.
> With JDK1.1.7/native threads it works great, and worked
> with JDK1.2 without any problems.
>
> From the started VM I call some native methods. The methods are in
> the same "executable" program as the rest of the code - and worked
> in JDK1.1.7. In JDK1.2 it can't find the methods.
>
> After I moved the native methods in a .so file and I used System.loadLibrary()
> everything worked fine. Still, I don't remember anything in the specs
> requiring that - is it a bug or a feature?
>
> ( everything worked fine after that, I'm using JDK1.2 now )
>
> Regards
> Costin
>
> ( application = apache-apr, I wrote a small mod_java module, and I try
> to make it work with 1.2)
>
>
> ----------------------------------------------------------------------
> To UNSUBSCRIBE, email to [EMAIL PROTECTED]
> with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]