在 Linux 中使用 Contiki_OS 运行应用程序时报告 Java 运行时错误

在 Linux 中使用 Contiki_OS 运行应用程序时报告 Java 运行时错误

我在 Linux Ubuntu 16.04.06 中使用虚拟机在 Contiki-NG 中编译和执行应用程序时出现以下错误,模拟器在大约 1.4 秒处停止,并显示以下消息:……………………………………………………………………………………………………………………….. [java] Java 运行时环境检测到致命错误:[java] SIGSEGV [java] Java 结果:139 …………………………………………………………………………………………………………….. 这代码运行完美,但现在我无法运行用 Contiki OS 编写的应用程序。Linux:Ubuntu 16.04

Java 版本 openjdk 版本“1.8.0_242” OpenJDK 运行环境(构建 1.8.0_242-8u242-b08-0ubuntu3~16.04-b08) OpenJDK 64 位服务器 VM(构建 25.242-b08,混合模式)

请帮助我。

马丁

答案1

除非您编写了 JNI 模块,否则获取 SIGSEGV 是一个错误,因此您必须更新 Java 运行时。

您似乎正在运行 Ubuntu 16.04 的官方 openjdk,因此我怀疑它是否会更新(无论如何,它几乎是 OpenJDK8 的最后一次更新),因为 16.04 已是 EOL。OpenJDK 8 也已进入最后一年(支持将于 2020 年 12 月结束)。

现在最好的办法是用 JDK9 替换 JDK8,JDK9 在 16.04 中也可用(两者应该在同一系统上共存,请参阅命令alternatives)。大约 10 分钟即可解决问题。

这就是说,即使 Java9 已经过时了,如果你必须更改版本,你可以得到更现代的东西......

相关内容