in reply to Re^12: problem installing PLJava on Windows Vista
in thread problem installing PLJava on Windows Vista

One thing that did strike me as odd was that the actual java message we're getting is very light on diagnostic information. I wondered if the PLJava module was doing something to remove/conceal some of the diagnostic information, but I haven't yet gone looking to see if that's the case.

Cheers,
Rob
  • Comment on Re^13: problem installing PLJava on Windows Vista

Replies are listed 'Best First'.
Re^14: problem installing PLJava on Windows Vista
by RASSyndrome (Novice) on Jun 17, 2009 at 05:44 UTC
    There's a smidge more information from "java test":
    C:\Users\Shai\Documents\HadToDL\PLJava-0.04>java test PLJava - Native code library failed to load. See the chapter on Dynami +c Linking Problems in the SWIG Java documentation for help. java.lang.UnsatisfiedLinkError: perl5.PLJavaJNI.PLJava_start()I

    Don't know if it helps all that much though. That perl5.PLJavaJNI.PLJava_start() is the culprit suggests that the problem is happening when Java tries to use the native function from the C component -- it fails at the border. Of the possible causes for this exception that the SWIG documentation lists, "unresolved symbols in the compiled C/C++ code" and "ensure that you are using the correct C/C++ compiler and linker combination and options for successful native library loading." would be the leading candidates -- the error occurs after the .dll loading happens. "java -verbose:jni test" doesn't say anything about unresolved symbols, though, and I can't seem to find anything about compiler-linker combinations in that SWIG Wiki... hmm.
      I also have a VC 7.0 and a perl-5.10.0 built using that compiler. (Neither MinGW nor VC 7.0 have any trouble with Inline-Java-0.52, at least as concerns the building of the module and the running of the test suite.) When I use my VC 7 perl/compiler combination on PLJava-0.04, both 'perl Makefile.PL' and 'nmake' run fine, but 'nmake test' produces:
      C:\_32\comp\PLJava-0.04>nmake test Microsoft (R) Program Maintenance Utility Version 7.00.9466 Copyright (C) Microsoft Corporation. All rights reserved. C:\jdk1.5.0_07\bin\java test # # An unexpected error has been detected by HotSpot Virtual Machine: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x770b0267, pid=4092, + tid=3448 # # Java VM: Java HotSpot(TM) Client VM (1.5.0_07-b03 mixed mode, sharin +g) # Problematic frame: # C [ntdll.dll+0x60267] # # An error report file with more information is saved as hs_err_pid409 +2.log # # If you would like to submit a bug report, please visit: # http://java.sun.com/webapps/bugreport/crash.jsp # NMAKE : fatal error U1077: 'C:\jdk1.5.0_07\bin\java' : return code '0x +1' Stop.
      I would expect that this is just a different manifestation of the same problem - though there's not one shred of evidence to support that expectation. Here is that error log (if you know someone who can make use of it):
      # # An unexpected error has been detected by HotSpot Virtual Machine: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x770b0267, pid=4092, + tid=3448 # # Java VM: Java HotSpot(TM) Client VM (1.5.0_07-b03 mixed mode, sharin +g) # Problematic frame: # C [ntdll.dll+0x60267] # --------------- T H R E A D --------------- Current thread (0x003d85e8): JavaThread "main" [_thread_in_native, id +=3448] siginfo: ExceptionCode=0xc0000005, reading address 0x614a4c54 Registers: EAX=0x04a02fd8, EBX=0x04a00000, ECX=0x614a4c50, EDX=0x04006176 ESP=0x000bef1c, EBP=0x000bef44, ESI=0x04a02fd0, EDI=0x04a02fe0 EIP=0x770b0267, EFLAGS=0x00010246 Top of Stack: (sp=0x000bef1c) 0x000bef1c: 00003d20 04a00000 00000000 04a06fe8 0x000bef2c: 00009000 04a02fe0 614a4c50 00003d20 0x000bef3c: 04a00000 04a00000 000bef74 77082d5e 0x000bef4c: 04a00000 04a02fe0 000bef6c 00000000 0x000bef5c: 04a00000 04a000c4 04a00000 00000000 0x000bef6c: 00000800 00000000 000bf05c 77082d03 0x000bef7c: 04a00000 00003d20 7617a6c9 04a00000 0x000bef8c: 00000000 00000000 04a00148 00000000 Instructions: (pc=0x770b0267) 0x770b0257: 00 c6 45 14 00 8b 56 0c 8d 46 08 8b 08 89 4d f0 0x770b0267: 8b 49 04 89 55 f4 8b 12 3b d1 0f 85 4d 01 00 00 Stack: [0x00080000,0x000c0000), sp=0x000bef1c, free space=251k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=nat +ive code) C [ntdll.dll+0x60267] C [ntdll.dll+0x32d5e] C [ntdll.dll+0x32d03] C [ntdll.dll+0x2f2b8] C [ntdll.dll+0xaf1eb] C [ntdll.dll+0x64ca0] C [ntdll.dll+0x88dd3] C [ntdll.dll+0x2f83f] C [ntdll.dll+0x2f2b8] C [MSVCR70.dll+0x10d3] C [MSVCR70.dll+0x107b] C [MSVCR70.dll+0x60c0] Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) j perl5.PLJavaJNI.PLJava_start()I+0 j perl5.PLJava.PLJava_start()I+0 j perl5.Perl.<clinit>()V+23 v ~StubRoutines::call_stub j test.main([Ljava/lang/String;)V+2 v ~StubRoutines::call_stub --------------- P R O C E S S --------------- Java Threads: ( => current thread ) 0x00323a58 JavaThread "Low Memory Detector" daemon [_thread_blocked, + id=756] 0x00324700 JavaThread "CompilerThread0" daemon [_thread_blocked, id= +2752] 0x00323078 JavaThread "Signal Dispatcher" daemon [_thread_blocked, i +d=3496] 0x0031c9e8 JavaThread "Finalizer" daemon [_thread_blocked, id=3396] 0x002ec378 JavaThread "Reference Handler" daemon [_thread_blocked, i +d=3732] =>0x003d85e8 JavaThread "main" [_thread_in_native, id=3448] Other Threads: 0x002fa328 VMThread [id=1928] 0x00325138 WatcherThread [id=3764] VM state:not at safepoint (normal execution) VM Mutex/Monitor currently owned by a thread: None Heap def new generation total 576K, used 177K [0x22aa0000, 0x22b40000, 0 +x22f80000) eden space 512K, 34% used [0x22aa0000, 0x22acc5b0, 0x22b20000) from space 64K, 0% used [0x22b20000, 0x22b20000, 0x22b30000) to space 64K, 0% used [0x22b30000, 0x22b30000, 0x22b40000) tenured generation total 1408K, used 0K [0x22f80000, 0x230e0000, 0x +26aa0000) the space 1408K, 0% used [0x22f80000, 0x22f80000, 0x22f80200, 0x2 +30e0000) compacting perm gen total 8192K, used 40K [0x26aa0000, 0x272a0000, 0 +x2aaa0000) the space 8192K, 0% used [0x26aa0000, 0x26aaa0b8, 0x26aaa200, 0x2 +72a0000) ro space 8192K, 67% used [0x2aaa0000, 0x2affd9f8, 0x2affda00, 0x2 +b2a0000) rw space 12288K, 46% used [0x2b2a0000, 0x2b843808, 0x2b843a00, 0x +2bea0000) Dynamic libraries: 0x00400000 - 0x0040d000 C:\jdk1.5.0_07\bin\java.exe 0x77050000 - 0x771b0000 C:\Windows\SysWOW64\ntdll.dll 0x75270000 - 0x75380000 C:\Windows\syswow64\kernel32.dll 0x75790000 - 0x75856000 C:\Windows\syswow64\ADVAPI32.dll 0x76880000 - 0x76970000 C:\Windows\syswow64\RPCRT4.dll 0x75200000 - 0x75260000 C:\Windows\syswow64\Secur32.dll 0x76610000 - 0x766ba000 C:\Windows\syswow64\MSVCRT.dll 0x6d730000 - 0x6d8c7000 C:\jdk1.5.0_07\jre\bin\client\jvm.dll 0x76bd0000 - 0x76ca0000 C:\Windows\syswow64\USER32.dll 0x755f0000 - 0x75680000 C:\Windows\syswow64\GDI32.dll 0x74bb0000 - 0x74be2000 C:\Windows\system32\WINMM.dll 0x769f0000 - 0x76b34000 C:\Windows\syswow64\ole32.dll 0x76b40000 - 0x76bcd000 C:\Windows\syswow64\OLEAUT32.dll 0x74b70000 - 0x74ba9000 C:\Windows\system32\OLEACC.dll 0x754a0000 - 0x75500000 C:\Windows\system32\IMM32.DLL 0x753d0000 - 0x75498000 C:\Windows\syswow64\MSCTF.dll 0x74c30000 - 0x74c5c000 C:\Windows\system32\apphelp.dll 0x766f0000 - 0x766f9000 C:\Windows\syswow64\LPK.DLL 0x75680000 - 0x756fd000 C:\Windows\syswow64\USP10.dll 0x6d2f0000 - 0x6d2f8000 C:\jdk1.5.0_07\jre\bin\hpi.dll 0x76ca0000 - 0x76ca7000 C:\Windows\syswow64\PSAPI.DLL 0x6d700000 - 0x6d70c000 C:\jdk1.5.0_07\jre\bin\verify.dll 0x6d370000 - 0x6d38d000 C:\jdk1.5.0_07\jre\bin\java.dll 0x6d720000 - 0x6d72f000 C:\jdk1.5.0_07\jre\bin\zip.dll 0x10000000 - 0x10005000 C:\_32\comp\PLJava-0.04\PLJava.dll 0x047c0000 - 0x04890000 C:\_32\perl_vc7\5.10.0\bin\perl510.dll 0x7c000000 - 0x7c054000 C:\vsnet\Common7\Packages\Debugger\MSVCR70 +.dll VM Arguments: java_command: test Launcher Type: SUN_STANDARD Environment Variables: JAVA_HOME=C:\jdk1.5.0_07 PATH=C:\_32\msys\1.0\local_dyn\bin;C:\vsnet\Common7\IDE;C:\vsnet\VC7\B +IN;C:\vsnet\Common7\Tools;C:\vsnet\Common7\Tools\bin\prerelease;C:\vs +net\Common7\Tools\bin;C:\vsnet\FrameworkSDK\bin;C:\WINDOWS\Microsoft. +NET\Framework\v1.0.3705;"C:\Program Files\Windows NT\Accessories";C:\ +vsnet\Common7\Packages\Debugger;C:\_32\third_party_app;C:\GNUWin32\bi +n;C:\_32\perl_vc7\5.10.0\bin;C:\home\rob\mingw_vista\i686-pc-mingw32\ +bin;c:\ruby\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wb +em;C:\batch;C:\_32\glib\bin;C:\_32\msys\1.0\bin;C:\_32\gsl_dyn\bin;C: +\_32\swig\swigwin-1.3.36; USERNAME=Rob DISPLAY=1 OS=Windows_NT PROCESSOR_IDENTIFIER=AMD64 Family 15 Model 75 Stepping 2, AuthenticAMD --------------- S Y S T E M --------------- OS: Windows NT 6.0 Build 6001 Service Pack 1 CPU:total 2 family 79, cmov, cx8, fxsr, mmx, sse, sse2, ht Memory: 4k page, physical 1047316k(513444k free), swap 2367592k(139772 +4k free) vm_info: Java HotSpot(TM) Client VM (1.5.0_07-b03) for windows-x86, bu +ilt on May 3 2006 01:04:38 by "java_re" with MS VC++ 6.0
      Cheers,
      Rob
        Well, I'm hanging this one up for a bit and seeing if I can get Inline::Java to work. I can get the basic Inline::Java modules installed so I can embed Java in Perl, but the "experimental" JNI extension and Inline::Java::PerlInterpreter that would do the other way around don't seem to want to work on my machine.