我的pom中有maven-assembly-plugin.xml:
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.xxx.Main</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-my-jar-with-dependencies</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
所以在构建项目后,我得到了 xxx-1.0-SNAPSHOT.jar可执行文件。因此,当我在我的终端中运行它时,例如:
$ java -jar xxx.jar
它返回:
no main manifest attribute, in xxx-1.0-SNAPSHOT.jar
您的构建会创建一个额外的 jar,其名称中包含 jar-with-dependencies
。你必须运行这个罐子。