web-dev-qa-db-ja.com

「検出された不整合:dl-lookup.c:111」(Java結果127)エラーのトラブルシューティング方法を教えてください。

現在取り組んでいるゲームにMavenを使用してJavaプロジェクトをビルドしようとしています。

他のユーザーによる最近のリポジトリへのプッシュにより、ビルドが壊れましたが、他のユーザーは壊れていません。

最近のビルドではPom.xmlは変更されておらず、私のJava環境は一貫性が保たれています。

Ubuntu 18.04 LTSディストリビューションでJava 8 OpenJDK(1.8.0_211))を使用しています。

Mavenリポジトリーは正常にコンパイルできますが、所定の(mvn integration-test -Pdesktop)ビルドを使用してコードを実行しようとすると、ビルド成功、いくつかのエラーが発生し、アプリケーションが起動しません。

Linuxフォーラムを調べましたが、同様のケースを見つけることができませんでした。

通常のMavenデバッグオプションは、私が認識している問題の初期兆候を提供していません。

debugging ld、 "Inconsistency detected by ld.so" を含むいくつかのスタックオーバーフローの質問を確認しましたが、提案されたコメントのコメントからどこを開始すればよいか、これが私のケースで実行可能かどうかわかりません。

Javaエラーコード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アプリケーションを起動せずにビルドが成功しました。

ビルドは現在、他のプラットフォームのユーザーに対して実行されています。

10
Jack

OpenJDK 8へのダウングレード

Xubuntu 18.04とEclipse 2018-12(4.10.0)でも同じ問題が発生しました。正常に動作していましたが、おそらくシステム(または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も使用しています。

11
snesgx