我正在尝试使用Maven为我正在开发的游戏构建一个Java项目。
最近由另一个用户推送到我们的存储库已经打破了我的构建,但没有打破其他用户。
在最近的版本中没有对Pom.xml进行任何更改,并且我的Java环境保持一致。
我在Ubuntu 18.04 LTS发行版上使用Java 8 OpenJDK(1.8.0_211)。
maven存储库能够成功编译,但是当我尝试使用我们预定的(mvn integration-test -Pdesktop)构建执行代码时,我收到Build Success,一些错误并且没有应用程序启动。
我看过Linux论坛,但一直无法找到类似的案例。
Normal Maven Debug选项未提供我识别的问题的任何初始指示。
我已经查看了几个Stack Overflow问题,包括debugging ld, "Inconsistency detected by ld.so",但我不确定从哪里开始提出建议的方法,如果这对我的案例是可行的。
我查看了Java Error Code 127,它表明在我的CLASSPATH上找不到资源。这是正确的吗?如何识别似乎是成功构建的缺失资源?
错误如下。
[java] Inconsistency detected by ld.so: dl-lookup.c: 111: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)' failed!
[java] Java Result: 127
在成功的过程中,我期待构建报告成功并启动游戏。失败时,我原本以为构建报告失败,但是我没有启动LibGDX应用程序就看到了构建成功。
目前正在为其他平台上的用户运行构建。
降级至OpenJDK 8
我在使用Eclipse 2018-12(4.10.0)的Xubuntu 18.04中遇到了同样的问题。它工作正常,但可能是系统中的某些更新(或特别是OpenJDK)启动了这个问题。此外,Gradle任务未显示在Gradle窗口中。
我解决了删除软件包的问题:default-jre,default-jdk,default-jre-headless,default-jdk-headless,所有这些都是“指向”openjdk-11。
然后我安装了软件包:openjdk-8-jre,openjdk-8-jdk,openjdk-8-jre-headless和openjdk-8-jdk-headless。
将vm部分中的eclipse.ini更改为:-vm / usr / lib / jvm / java-8-openjdk-amd64 / bin
现在一切正常,Gradle任务再次显示。为了澄清,我也在使用LibGDX。