Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Java Forum / General / February 2006

Tip: Looking for answers? Try searching our database.

Another error creating JVM through JNI

Thread view: 
Tim - 13 Feb 2006 09:46 GMT
I notice that there is another poster with a similar problem to mine,
but he's on Unix and I am on Windows, and I think there may be a
setup/config problem, so I am starting a new thread

I am also getting an error creating the JVM, I am using j2sdk1.4.2_04
with MSDEV 6.0 and have cut'n'pasted about three different pieces of
sample code ( I won't post loads of code here) from working examples
found on the web, they all fail on the call to JNI_CreateJavaVM with an
error code of -1

I am wondering is there are any common setup problems, perhaps having
dlls in the wrong place of environment variables set wrongly, that
might be a cause of this problem?

Here is an example of one code sample I tried that did not work.
Incidentally if I set the version wrong, I get a different error code
(-3, which is to indicate wrong version)

jint ret;
JavaVM* jvm;
JNIEnv* env;
JavaVMInitArgs args;
JavaVMOption options[1];

args.version = JNI_VERSION_1_2;
args.nOptions = 1;
options[0].optionString = "-Djava.class.path=c:\\";
args.options = options;
args.ignoreUnrecognized = JNI_FALSE;

ret = JNI_CreateJavaVM(&jvm, (void **)&env, &args);
Gordon Beaton - 13 Feb 2006 10:05 GMT
> I am wondering is there are any common setup problems, perhaps
> having dlls in the wrong place of environment variables set wrongly,
> that might be a cause of this problem?

The JVM DLL's must be in your PATH, or the program will fail to load
them (and you will be unable to create the JVM).

/gordon

Signature

[  do not email me copies of your followups  ]
g o r d o n + n e w s @  b a l d e r 1 3 . s e

Tim - 13 Feb 2006 12:18 GMT
Thanks Gordon -you set me thinking on the right lines; I had placed the
JVM.dll in my project directory, so it was being loaded OK, but it
seems it *has* to run from its default location.  So I removed my copy
of the dll and put the correct one on ther path and now it's working

Tim
Chris Uppal - 13 Feb 2006 12:46 GMT
> The JVM DLL's must be in your PATH, or the program will fail to load
> them (and you will be unable to create the JVM).

Or you can load the DLL explicitly by its filename.  That's the approach I
favour myself and recommend to others.

I've posted code for that more than once, if the OP wants it then Goodle should
provide.

   -- chris


Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.