当我在命令行中运行TestNG时,抛出异常:
C:\ TEST> java org.testng.TestNG testng.xml线程中的异常" main" java.lang.NoClassDefFoundError: COM /博伊斯特/ jcommander / ParameterException at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2570) 在java.lang.Class.getMethod0(Class.java:2813) 在java.lang.Class.getMethod(Class.java:1663) 在sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494) 在sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486) 引起:java.lang.ClassNotFoundException: com.beust.jcommander.ParameterException 在java.net.URLClassLoader $ 1.run(URLClassLoader.java:366) 在java.net.URLClassLoader $ 1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) 在java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ......还有6个
答案 0 :(得分:1)
jcommander似乎不见了。您还必须在类路径中添加它,因为在命令行中运行TestNG时它是必需的依赖项。
答案 1 :(得分:0)
首先,您需要下载TestNG库档案,然后将内容提取到一个文件夹中。某些人可能将此文件夹添加到他们的项目中并命名为“ lib”,但在我的情况下,我将其命名为“ TestNG”文件夹并将其放置在C:\目录中。
我已经下载了7.0.0版本。 http://dl.bintray.com/testng-team/testng-eclipse-release/
这将为您服务:
打开CLI,将cd插入您的项目文件夹位置,然后键入以下命令:
set classpath = C:\ [您在Eclipse中的项目文件夹] \ bin; C:\ TestNG \ plugins *
请注意:=等号之间不得有空格。
运行命令:
java -classpath%classpath%org.testng.TestNG testng.xml
或..您可以键入长命令:
java -classpath C:\eclipse-2018\Tests\bin;C:\TestNG\plugins\* org.testng.TestNG testng.xml
如果仍然遇到问题,则必须将类文件重构为新名称,以便在\ bin文件夹中生成新的.class文件。然后使用新的类名更新testng.xml脚本。