我使用Java编码的桌面应用程序来跟踪我的项目时间。
我用它直到IT在我的电台上进行了新的设置。现在我无法启动此应用程序。
当我启动它时,我收到了一个日志文件:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d8fd8f5, pid=616, tid=4072
#
# JRE version: 6.0_15-b03
# Java VM: Java HotSpot(TM) Client VM (14.1-b02 mixed mode, sharing windows-x86 )
# Problematic frame:
# V [jvm.dll+0xfd8f5]
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
#
经过一段时间的谷歌搜索后,我再次使用Sun制作的Troubleshooting guide并再次使用-Xcheck:jni
参数启动应用程序。结果是我收到了这个新错误:
FATAL ERROR in native method: Wrong object class or methodID passed to JNI call
at org.jdesktop.jdic.tray.internal.impl.DisplayThread.initTray(Native Method)
at org.jdesktop.jdic.tray.internal.impl.DisplayThread.run(Unknown Source)
- locked <0x2801e4e0> (a java.lang.Class for org.jdesktop.jdic.tray.internal.impl.DisplayThread)
我尝试下载JDIC的最新版本,但即使启动他们自己的样本也会给我带来同样的错误。我想问题是错误消息中的已锁定,但我不知道从现在开始要去哪里......
你能帮帮我吗?
我的信箱:
Windows XP SP3
Java 6(1.6.0_15)
更新
现在已经解决了,我不知道怎么回事。从昨天起,我唯一可以告诉的是,我至少重启了一次,因为我没有安装新的java设置或其他任何东西......如果有人面临同样的问题,请抱歉。
答案 0 :(得分:0)
JNI的快乐啊!
我认为应该尝试使用的本机代码库的API与Java端不兼容。我的猜测是,IT人员所做的更改包括更改库/ DLL / Java应用程序尝试使用的任何内容。
答案 1 :(得分:0)
看看你是否可以调用不带问题参数的函数。
您可能会发现界面不再与库匹配。例如,如果您使用SWIG生成接口文件,则不同版本的SWIG会生成不同数量的参数。
不幸的是,java接口代码和库代码不匹配不会产生错误,它只会崩溃。