java - 在 Maven 项目中创建可执行 jar 时出错

标签 java eclipse maven testng

我创建了一个 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/

相关文章:

java - 无法运行程序 "/Applications/Utilities/Terminal.app": error=13, 权限被拒绝

java - Maven 单元测试

java - 在 maven 构建中集成 yahoo smush.it 以进行图像压缩

Java HashMap 键与字符串比较失败

java - 检查 JPanel 是否包含 JButton

java - 如何获取数组来引用类

java - SWT/Eclipse 3.x API 中的 SwingUtilities invokeLater 等价物?

java - 结束 do-while 循环

eclipse - Eclipse:选择“在服务器上运行”不会启动Firefox,它会启动Eclipse的内部浏览器

Java 1.8、tomcat 8.5、Jersey 2 - 无法正常工作