TestNG 类路径设置发生 JNI 错误
JNI error occurrence with TestNG classpath setup
我正在查看 TestNG 文档,我想实现 DotTestListener class 以覆盖用于记录和结果的 TestNG 方法(文档中的第 6.2.1 节)
https://testng.org/doc/documentation-main.html
我正在尝试在 cmd 中使用此命令来调用侦听器:
java -classpath C:\TestNG\plugins\testng7.0.jar;C:\eclipse-2018\Tests org.testng.TestNG -listener org.testng.reporters.DotTestListener testng.xml
注意:我自己将 TestNG 库重命名为 "testng7.0.jar"
\Tests 是我的eclipse项目文件夹
当我 运行 命令时,我在 CLI 中遇到此异常:
Error: A JNI error has occurred, please check your installation and
try again 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
打开cmd,cd进入eclipse工程目录,设置环境class路径为TestNG\plugins(所有重要的Jar库),selenium依赖路径,TestNG工程路径包含 .class 个文件的 bin 文件夹:
java -classpath C:\eclipse-2018\Tests\bin;C:\Selenium_dependencies\*;C:\TestNG\plugins\* org.testng.TestNG -listener org.testng.reporters.DotTestListener testng.xml
class路径也可以这样设置:
1.
set classpath=C:\eclipse-2018\Tests\bin;C:\Selenium_dependencies\*;C:\TestNG\plugins\*
2.
java -classpath %classpath% org.testng.TestNG -listener org.testng.reporters.DotTestListener testng.xml
Selenium 依赖项:
https://jar-download.com/artifacts/org.seleniumhq.selenium/selenium-chrome-driver/3.12.0/source-code
我正在查看 TestNG 文档,我想实现 DotTestListener class 以覆盖用于记录和结果的 TestNG 方法(文档中的第 6.2.1 节) https://testng.org/doc/documentation-main.html
我正在尝试在 cmd 中使用此命令来调用侦听器:
java -classpath C:\TestNG\plugins\testng7.0.jar;C:\eclipse-2018\Tests org.testng.TestNG -listener org.testng.reporters.DotTestListener testng.xml
注意:我自己将 TestNG 库重命名为 "testng7.0.jar"
\Tests 是我的eclipse项目文件夹
当我 运行 命令时,我在 CLI 中遇到此异常:
Error: A JNI error has occurred, please check your installation and try again 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
打开cmd,cd进入eclipse工程目录,设置环境class路径为TestNG\plugins(所有重要的Jar库),selenium依赖路径,TestNG工程路径包含 .class 个文件的 bin 文件夹:
java -classpath C:\eclipse-2018\Tests\bin;C:\Selenium_dependencies\*;C:\TestNG\plugins\* org.testng.TestNG -listener org.testng.reporters.DotTestListener testng.xml
class路径也可以这样设置:
1.
set classpath=C:\eclipse-2018\Tests\bin;C:\Selenium_dependencies\*;C:\TestNG\plugins\*
2.
java -classpath %classpath% org.testng.TestNG -listener org.testng.reporters.DotTestListener testng.xml
Selenium 依赖项:
https://jar-download.com/artifacts/org.seleniumhq.selenium/selenium-chrome-driver/3.12.0/source-code