web-dev-qa-db-ja.com

JNIエラーが発生しました。インストールを確認してください

TestNGを使用して非常に単純なテストを実行しようとしていますが、このエラーメッセージが表示されます。以前の回答を読んでみましたが、うまくいきません。私はTestNGの初心者なので、誰かに助けてもらえたら嬉しいです。これはエラーメッセージです。

Exception in thread "main" Java.lang.NoClassDefFoundError: com/beust/jcommander/ParameterException
    at Java.lang.Class.getDeclaredMethods0(Native Method)
    at Java.lang.Class.privateGetDeclaredMethods(Unknown Source)
    at Java.lang.Class.privateGetMethodRecursive(Unknown Source)
    at Java.lang.Class.getMethod0(Unknown Source)
    at Java.lang.Class.getMethod(Unknown Source)
    at Sun.launcher.LauncherHelper.validateMainClass(Unknown Source)
    at Sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: Java.lang.ClassNotFoundException: com.beust.jcommander.ParameterException
    at Java.net.URLClassLoader.findClass(Unknown Source)
    at Java.lang.ClassLoader.loadClass(Unknown Source)
    at Sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at Java.lang.ClassLoader.loadClass(Unknown Source)
    ... 7 more
6
Geetha P

はい issue があり、testNGがEclipseで実行されています。この投稿の時点で、ビルドパスに jcommander jar file を追加して回避策を試してエラーを修正し、EclipseからtestNGスイートを実行できます。

コマンドプロンプトまたはターミナルを使用して実行する場合、MACで実行する方法は次のとおりです。

Java -cp "PATH/TO/TESTNG.jar:PATH/TO/jcommander-1.7.jar" org.testng.TestNG testng.xml

同様に、ウィンドウのパスも置き換えます。コマンドプロンプトを使用すると、テストスイートはエラーなしで実行されます。

9
Girish Sortur

https://github.com/cbeust/testng-Eclipse/issues/14 を参照してください。

Jcommdar.jarをクラスパスに追加して実行します。Java -cp "C:\ TestNG\testng.jar; C:\ TestNG\jcommander.jar" org.testng.TestNG testng.xml

3
Aru

この問題を解決するには、jcommander1.7 jarファイルをダウンロードする必要があります。 jarファイルをダウンロードするには、URLの下にアクセスしてjcommander1.7 jarファイルを取得します

http://www.Java2s.com/Code/Jar/j/Downloadjcommander17jar.htm

Jcommander1.7 jarファイルを実装するプロセス-

プロジェクトを右クリック->プロパティ-> liabrariesをクリック-> [外部jarの追加]をクリック-> jcommander1.7 jarファイルがダウンロードされている場所に移動します。

スクリプトを実行すると、スクリプトが正常に実行されます。

2
Haroon Khan

追加 jcommdar.jarからclasspathに変更して、次を実行します。

Java -cp "C:\TestNG\testng.jar;C:\TestNG\jcommander.jar" org.testng.TestNG testng.xml

本当に助かります。

1
Venkatesh P

Testng.xmlの実行中に同様のエラーが発生しました。私は自分のローカルパスからローカルユーザーがインクルード(ビルドパス)したSeleniumサーバーjarを置き換えました。 jarファイルをプロジェクトフォルダー(lib)にコピーし、プロジェクトに含めます。これでうまくいきました。

0
Sanith

これは通常、JDKバージョンとJREバージョンに互換性がない場合、または必要なJREバージョンがインストールされていない場合に発生します。

エラーを修正するには、ウィンドウ->設定->コンパイラ->コンパイラコンプライアンスレベルを使用して、JREバージョンを既存のJREバージョンに変更します。

Eclipse IDEを使用してDemoTest.xmlファイルをTestNG Suiteとして実行しようとしたときにも、同様のエラーが発生しました。

enter image description here

Exception in thread "main" Java.lang.NoClassDefFoundError: org/testng/TestNGException
    at Java.lang.Class.getDeclaredMethods0(Native Method)
    at Java.lang.Class.privateGetDeclaredMethods(Unknown Source)
    at Java.lang.Class.privateGetMethodRecursive(Unknown Source)
    at Java.lang.Class.getMethod0(Unknown Source)
    at Java.lang.Class.getMethod(Unknown Source)
    at Sun.launcher.LauncherHelper.validateMainClass(Unknown Source)
    at Sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: Java.lang.ClassNotFoundException: org.testng.TestNGException
    at Java.net.URLClassLoader.findClass(Unknown Source)
    at Java.lang.ClassLoader.loadClass(Unknown Source)
    at Sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at Java.lang.ClassLoader.loadClass(Unknown Source)
    ... 7 more

私にとって、プロジェクトのビルドパスにtestng-6.11.jarを追加すると、問題は解決しました。以下の手順に従ってください:

project-> Build path-> Configure build path-> Libraries tab-> Add external jars-> testng-6.11.jarとapply

0
Pranab Thakuria
  • コンパイル時にファイルは存在しますが、実行時に到達できません
  • コンパイル時と実行時の両方の環境をクロスチェックする必要があります。
    クラスパス
0

次の解決策で問題が解決しました。ありがとう

この問題を解決するには、jcommander1.7 jarファイルをダウンロードする必要があります。 jarファイルをダウンロードするには、URLの下にアクセスしてjcommander1.7 jarファイルを取得します

http://www.Java2s.com/Code/Jar/j/Downloadjcommander17jar.htm

Jcommander1.7 jarファイルを実装するプロセス-

プロジェクトを右クリック->プロパティ-> liabrariesをクリック-> [外部jarの追加]をクリック-> jcommander1.7 jarファイルがダウンロードされている場所に移動します。

スクリプトを実行すると、スクリプトが正常に実行されます。

0
krishna Grandhi