maven打包后的jar包运行显示没有主清单
时间: 2024-01-18 16:03:50 浏览: 126
Maven 项目生成jar运行时提示“没有主清单属性”
如果使用maven打包后的jar包运行时出现 "没有主清单" 的错误,可以尝试以下几种解决方法:
1. 确保项目的pom.xml文件中已经正确配置了maven-jar-plugin插件。在插件配置中,需要指定主类的全限定名,例如:
```xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<mainClass>com.example.MainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
```
2. 确保项目的依赖项已正确添加到pom.xml文件中,并且没有引入冲突的依赖项。
3. 检查是否有其他插件或配置文件与maven-jar-plugin冲突。有时候,其他插件可能会覆盖或修改主清单的配置。
4. 尝试使用maven-assembly-plugin插件进行打包。该插件可以更灵活地配置打包过程,例如指定主清单:
```xml
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<archive>
<manifest>
<mainClass>com.example.MainClass</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
```
使用上述方法之一,重新执行 "mvn package" 命令进行打包,然后再尝试运行生成的jar包。
阅读全文