繁体   English   中英

执行从Maven构建创建的jar文件

[英]executing jar file created from maven build

我已经通过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插件创建具有依赖项的胖jar。 将此添加到您的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执行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM