我创建了一个 Maven 项目并使用 testng 在其中编写测试。我还使用 mvn package 命令创建了一个可执行 jar,但在执行时出现错误。我实际上无法找出错误。请帮我解决这个问题。
$java -jar apitesting1-0.0.1-SNAPSHOT.jar
Exception in thread "main" java.lang.NoClassDefFoundError: org/testng/ITestListener
Caused by: java.lang.ClassNotFoundException: org.testng.ITestListener
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
Could not find the main class: apitesting1.apitesting1.App. Program will exit.
这是我的主课
public class myClass
{
public static void main( String[] args )
{
}
}
这是我的 pom.xml
<modelVersion>4.0.0</modelVersion>
<groupId>abc</groupId>
<artifactId>abc</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<build> <plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.2</version>
<executions> <execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>abc.abc.myClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
我是 Maven 新手..并从各个地方(特别是)复制了 pom.xml 的一些内容..如果有任何多余的数据或标签,请告诉我。然而我觉得有..请帮忙。
谢谢:)
最佳答案
主类元素必须包含类的名称。您的类的名称是 apitesting1.apitesting1.App
,而不是 src/main/java/apitesting1.apitesting1.App.java
。
关于java - 在 Maven 项目中创建可执行 jar 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26566160/