• Post Reply Bookmark Topic Watch Topic
  • New Topic

How to create jar file for application using JNI?

 
Saurabh Gangarde
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have built one video application using jvlc..
but when I run it by creating a jar file it doesn't respond...
I am able to run it from command prompt without creating jar file very finely...
jvlc is API provided by VideoLan
So could anyone please tell how do i bundle my application in jar file..
And where to keep all th libraries (dlls)..

Th error log shows this...

# An error report file with more information is saved as hs_err_pid3768.log
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x62e4e49b, pid=3768, tid=1616
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_16-b02 mixed mode, sharing)
# Problematic frame:
# C [libvlc.dll+0x8e49b]
#

--------------- T H R E A D ---------------

Current thread (0x02c66620): JavaThread "Thread-2" [_thread_in_native, id=1616]

siginfo: ExceptionCode=0xc0000005, reading address 0x00000004

Registers:
EAX=0x00000000, EBX=0x02dc43c8, ECX=0x02c65e20, EDX=0x00000000
ESP=0x0301fb10, EBP=0x0301fb48, ESI=0x26bf4f10, EDI=0x02c666e0
EIP=0x62e4e49b, EFLAGS=0x00010202

Top of Stack: (sp=0x0301fb10)
0x0301fb10: 02c666e0 0301fba4 02d635fb 0301fb3c
0x0301fb20: 02c666e0 0301fba4 0301fb48 70441211
0x0301fb30: 02c666e0 0301fba4 02d635fb 704a401f
0x0301fb40: 02dc43c8 26bf4f10 0301fb68 70442f73
0x0301fb50: 00000000 02dc43c8 26bf4f10 26bf4f10
0x0301fb60: 26bf4f10 02c66620 0301fb94 00ad82ff
0x0301fb70: 02c666e0 0301fba4 0301fb78 26bf4f10
0x0301fb80: 0301fba4 26bf58d0 00000000 26bf4f10

Instructions: (pc=0x62e4e49b)
0x62e4e48b: 0a 00 8d 76 00 55 89 e5 56 53 83 ec 30 8b 45 08
0x62e4e49b: 8b 58 04 85 db 0f 84 7f 00 00 00 8b 53 20 85 d2


Stack: [0x02fe0000,0x03020000), sp=0x0301fb10, free space=254k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libvlc.dll+0x8e49b]
C[thread 3808 also had an error]
[jvlc.dll+0x2f73]
j org.videolan.jvlc.Playlist._isRunning()I+0
j org.videolan.jvlc.Playlist.isRunning()Z+1
j org.videolan.jvlc.JVLC.run()V+11
j java.lang.Thread.run()V+11
v ~StubRoutines::call_stub
V [jvm.dll+0x875fa]
V [jvm.dll+0xdfe2c]
V [jvm.dll+0x874cb]
V [jvm.dll+0x87228]
V [jvm.dll+0xa2093]
V [jvm.dll+0x111379]
V [jvm.dll+0x111347]
C [MSVCRT.dll+0x2a3b0]
C [kernel32.dll+0xb50b]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j org.videolan.jvlc.Playlist._isRunning()I+0
j org.videolan.jvlc.Playlist.isRunning()Z+1
j org.videolan.jvlc.JVLC.run()V+11
j java.lang.Thread.run()V+11
v ~StubRoutines::call_stub

--------------- P R O C E S S ---------------

Java Threads: ( => current thread )
=>0x02c66620 JavaThread "Thread-2" [_thread_in_native, id=1616]
0x02c669a0 JavaThread "AWT-Windows" daemon [_thread_in_native, id=4088]
0x00a92c60 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=3168]
0x00a719c8 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=3052]
0x00a70640 JavaThread "CompilerThread0" daemon [_thread_blocked, id=4036]
0x00a458d0 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=3680]
0x00a42818 JavaThread "Finalizer" daemon [_thread_blocked, id=3284]
0x0003eca8 JavaThread "Reference Handler" daemon [_thread_blocked, id=3624]
0x00035cd0 JavaThread "main" [_thread_in_native, id=3808]

Other Threads:
0x00a6d7f0 VMThread [id=3524]
0x00a72d30 WatcherThread [id=3936]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
def new generation total 576K, used 546K [0x22bd0000, 0x22c70000, 0x230b0000)
eden space 512K, 94% used [0x22bd0000, 0x22c48a98, 0x22c50000)
from space 64K, 100% used [0x22c60000, 0x22c70000, 0x22c70000)
to space 64K, 0% used [0x22c50000, 0x22c50000, 0x22c60000)
tenured generation total 1408K, used 177K [0x230b0000, 0x23210000, 0x26bd0000)
the space 1408K, 12% used [0x230b0000, 0x230dc688, 0x230dc800, 0x23210000)
compacting perm gen total 8192K, used 196K [0x26bd0000, 0x273d0000, 0x2abd0000)
the space 8192K, 2% used [0x26bd0000, 0x26c013b8, 0x26c01400, 0x273d0000)
ro space 8192K, 67% used [0x2abd0000, 0x2b132640, 0x2b132800, 0x2b3d0000)
rw space 12288K, 47% used [0x2b3d0000, 0x2b97f8a0, 0x2b97fa00, 0x2bfd0000)

Dynamic libraries:
0x00400000 - 0x0040d000 C:\Program Files\Java\jdk1.5.0_16\bin\java.exe
0x7c900000 - 0x7c9b0000 C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c8f4000 C:\WINDOWS\system32\kernel32.dll
0x77dd0000 - 0x77e6b000 C:\WINDOWS\system32\ADVAPI32.dll
0x77e70000 - 0x77f01000 C:\WINDOWS\system32\RPCRT4.dll
0x77c10000 - 0x77c68000 C:\WINDOWS\system32\MSVCRT.dll
0x6d740000 - 0x6d8de000 C:\Program Files\Java\jdk1.5.0_16\jre\bin\client\jvm.dll
0x77d40000 - 0x77dd0000 C:\WINDOWS\system32\USER32.dll
0x77f10000 - 0x77f56000 C:\WINDOWS\system32\GDI32.dll
0x76b40000 - 0x76b6d000 C:\WINDOWS\system32\WINMM.dll
0x6d300000 - 0x6d308000 C:\Program Files\Java\jdk1.5.0_16\jre\bin\hpi.dll
0x76bf0000 - 0x76bfb000 C:\WINDOWS\system32\PSAPI.DLL
0x6d710000 - 0x6d71c000 C:\Program Files\Java\jdk1.5.0_16\jre\bin\verify.dll
0x6d380000 - 0x6d39d000 C:\Program Files\Java\jdk1.5.0_16\jre\bin\java.dll
0x6d730000 - 0x6d73f000 C:\Program Files\Java\jdk1.5.0_16\jre\bin\zip.dll
0x6d070000 - 0x6d1dd000 C:\Program Files\Java\jdk1.5.0_16\jre\bin\awt.dll
0x73000000 - 0x73026000 C:\WINDOWS\system32\WINSPOOL.DRV
0x76390000 - 0x763ad000 C:\WINDOWS\system32\IMM32.dll
0x774e0000 - 0x7761c000 C:\WINDOWS\system32\ole32.dll
0x62dc0000 - 0x63068000 D:\Saurabh\workspace\jvlc-player\libvlc.dll
0x71ab0000 - 0x71ac7000 C:\WINDOWS\system32\WS2_32.DLL
0x71aa0000 - 0x71aa8000 C:\WINDOWS\system32\WS2HELP.dll
0x73760000 - 0x737a9000 C:\WINDOWS\system32\ddraw.dll
0x73bc0000 - 0x73bc6000 C:\WINDOWS\system32\DCIMAN32.dll
0x6d2b0000 - 0x6d300000 C:\Program Files\Java\jdk1.5.0_16\jre\bin\fontmanager.dll
0x74720000 - 0x7476b000 C:\WINDOWS\system32\MSCTF.dll
0x7c9c0000 - 0x7d609000 C:\WINDOWS\system32\shell32.dll
0x77f60000 - 0x77fdc000 C:\WINDOWS\system32\SHLWAPI.dll
0x773d0000 - 0x774d2000 C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2180_x-ww_a84f1ff9\comctl32.dll
0x5d090000 - 0x5d127000 C:\WINDOWS\system32\comctl32.dll
0x70440000 - 0x70744000 D:\Saurabh\workspace\jvlc-player\jvlc.dll
0x10000000 - 0x10005000 C:\WINDOWS\system32\jawt.dll
0x769c0000 - 0x76a73000 C:\WINDOWS\system32\USERENV.dll
0x68500000 - 0x68525000 D:\Saurabh\workspace\jvlc-player\plugins\libdshow_plugin.dll
0x77120000 - 0x771ac000 C:\WINDOWS\system32\OLEAUT32.DLL
0x61780000 - 0x61934000 D:\Saurabh\workspace\jvlc-player\plugins\libskins2_plugin.dll
0x6bc00000 - 0x6bc10000 D:\Saurabh\workspace\jvlc-player\plugins\libvout_directx_plugin.dll

VM Arguments:
jvm_args: -Djava.library.path=D:\Saurabh\workspace\jvlc-player
java_command: player.jar
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME=C:\Program Files\Java\jdk1.5.0_16
CLASSPATH=.;C:\Program Files\Java\jdk1.5.0_16\jre\lib;
PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;D:\Program Files\cvsnt;C:\Program Files\Common Files\Teleca Shared;C:\Program Files\Intuwave\Shared\mRouterRuntime;D:\Xilinx\bin\nt;D:\Program Files\QuickTime\QTSystem\;C:\Program Files\Java\jdk1.5.0_16\bin;D:\Pratik\BC5\BIN;D:\Pratik\Modeltech_5.5e\win32;D:\Program Files\Atmel\Flip 3.3.1\bin
USERNAME=protik
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 15 Stepping 13, GenuineIntel



--------------- S Y S T E M ---------------

OS: Windows XP Build 2600 Service Pack 2

CPU:total 2 (cores per cpu 2, threads per core 1) family 6 model 15 stepping 13, cmov, cx8, fxsr, mmx, sse, sse2

Memory: 4k page, physical 1037492k(363740k free), swap 2499148k(1897584k free)

vm_info: Java HotSpot(TM) Client VM (1.5.0_16-b02) for windows-x86, built on May 28 2008 01:04:49 by "java_re" with MS VC++ 6.0

#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
#

Please somebody help me into this as soon as possible...
Thanks in advance...
 
Saurabh Gangarde
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Will someone just give answer to my problem...
I will follow th rules...
Isnt there anyone on JavaRanch who can answer this question... ?
 
Mario Minutolo
Greenhorn
Posts: 23
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Saurabh Gangarde:
I have built one video application using jvlc..
but when I run it by creating a jar file it doesn't respond...
I am able to run it from command prompt without creating jar file very finely...
jvlc is API provided by VideoLan
So could anyone please tell how do i bundle my application in jar file..
And where to keep all th libraries (dlls)..
[...]
Please somebody help me into this as soon as possible...
Thanks in advance...


I have used JNI in the past, dll cannot be packaged inside jar file.
Is not a problem with the JVM but with OS, which should be able to reach the DLLs.

Your DLLs should be either on PATH or in the working directory of the process.

Is useful to have a batch program which run the java adding needed JARs and DLLs to CLASSPATH and PATH before running the java app.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!