执行从maven build创建的jar文件

我通过mvn clean install创建了一个jar文件。 在pom.xml中,我也指定了主类的名称。

 <configuration>
    <archive>
        <manifest>
            <mainClass>com.amdocs.som.dashboard.report.MainClass</mainClass>
        </manifest>
    </archive>
 </configuration>

当我尝试使用java -jar app.jar执行jar时,它在app.jar和我指定主类名称以及使用此命令java -cp app.jar com时出现错误,说明没有主要清单属性。 dashboard.report.MainClass,它为javax / mail / MessagingException提供了我的NoClassDefError。

PS:如果我从eclipse执行代码,它可以正常工作,没有任何问题


你可以使用spring-boot插件来创建一个依赖关系的胖罐子。 将此添加到您的pom.xml中

<build>
    <plugins>
     .... other plugins.
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <version>1.5.2.RELEASE</version>
        <executions>
            <execution>
                <goals>
                    <goal>repackage</goal>
                    </goals>
                <configuration>
                    <classifier>spring-boot</classifier>
                    <mainClass>com.amdocs.som.dashboard.report.MainClass</mainClass>
                                <executable>true</executable>
                </configuration>
            </execution>
        </executions>
    </plugin>
  </build>
</plugins>

现在当你做一个mvn clean install 。 它会创建2个jar,其中-spring-boot就是你应该执行的。

链接地址: http://www.djcxy.com/p/55025.html

上一篇: executing jar file created from maven build

下一篇: no main manifest attribute: intellij java ide