2

我在 Netbeans 中创建了一个 Java 项目,该项目在我的计算机上运行没有问题(在 Netbeans 和运行 jar 文件中),但是当我尝试在另一台计算机上运行该项目时,我收到以下错误消息:

Java 运行时环境检测到一个致命错误:

pc = 0x0000000062478337,pid = 2860,tid = 0x0000000000000e84 处的异常_访问_VIOLATION (0xc0000005)

JRE 版本:Java(TM) SE 运行时环境 (8.0_112-b15) (build 1.8.0_112-b15) Java VM:Java HotSpot(TM) 64-Bit Server VM (25.112-b15 混合模式 windows-amd64 压缩 oops) 有问题框架:V [jvm.dll+0x68337]

无法写入核心转储。默认情况下,在 Windows 的客户端版本上不启用小型转储

如果您想提交错误报告,请访问: http ://bugreport.java.com/bugreport/crash.jsp

我搜索了类似的问题,但似乎找不到任何与我的错误相匹配的内容,所以我不确定该怎么做。如果需要,我可以发布完整的错误日志。如果没有人能弄清楚,至少有人能指出我正确的方向吗(这是内存问题,我需要更新 Java 等)吗?

4

2 回答 2

3

根据hs_err_pid.log崩溃发生在com.microsoft.sqlserver.jdbc.AuthenticationJNI.SNISecGenClientContext显然属于MSSQL JDBC驱动程序的本机方法内部。

崩溃转储中最有趣的部分是行
C:\Program Files\Java\jre1.8.0_112\bin\sqljdbc_auth.dll

显然,sqljdbc_auth.dll不属于JRE。看起来这个文件是手动复制到 JRE 目录的。这是错误的,并且很可能是崩溃的原因。您必须正确安装 MSSQL JDBC 驱动程序并将-Djava.library.pathJVM 参数设置为指向具有驱动程序本机库的目录。

于 2016-11-16T21:42:02.237 回答
0

我今天在 Intellij 遇到了同样的问题。我通过指向新的 JRE 版本来解决它。

于 2017-08-10T23:05:40.733 回答