私の ANT スクリプトは、Linux マシンと一部の XP VM で問題なく実行されます。別のエンジニアがローカルで開始しようとすると、TestNG が [testng] をスローします。
私はこれまでこのクラスを見たことがなく、これが彼のマシンでのみ発生する原因がわかりません。asm-util-3.1.jar をインポートしようとしましたが、org.objcetweb.asm.util ではなく com.google.internal.asm.util で検索されるため、見つかりません。
私の ANT スクリプトは、Linux マシンと一部の XP VM で問題なく実行されます。別のエンジニアがローカルで開始しようとすると、TestNG が [testng] をスローします。
私はこれまでこのクラスを見たことがなく、これが彼のマシンでのみ発生する原因がわかりません。asm-util-3.1.jar をインポートしようとしましたが、org.objcetweb.asm.util ではなく com.google.internal.asm.util で検索されるため、見つかりません。
Eclipse TestNG プラグインを使用すると、同様のエラーが発生しました。
testng java.lang.noclassdeffounderror: com/google/inject/internal/Lists
これは、クラスパスから読み込まれる Guice のバージョンの違いのようです。Guice 2.0 には上記のクラスがありますが、Guice 3.0 では次のように移動したようです。
com/google/inject/internal/util/Lists
TestNG Eclipse プラグインの更新バージョンで問題が修正されました。
彼は適切なバージョンの Java をインストールしており、彼の環境によって指摘されていましたが、Java の .conf ファイルの奥深くに、古い 1.5 インストールへの参照 (JVM_ROOT) があったことが判明しました。セドリックを助けてくれてありがとう!
Guice または Asm に関連する問題のように見えます。Maven またはhttp://testng.orgから直接ダウンロードした jar ファイルで TestNG を使用していますか?
Maven バージョンには TestNG クラスのみが含まれており、Maven は他のすべての依存関係をダウンロードできます。
jar ファイルには、guice.jar を含むすべての依存関係が含まれているため、環境内で既に別のバージョンの Guice を使用している場合、競合が発生する可能性があります。