似乎有两种方法可以使maven生成的jar成为可执行文件。一种方法是在执行过程中设定一个目标
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>我发现的另一种方法是将configuration executable设置为true
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
</plugins>
</build>我找不到两者之间的区别的解释。有人能解释一下吗?
发布于 2021-02-04 12:04:11
根据documentation的说法。
如果您使用的是
spring-boot-starter-parent,那么repackage目标将在id为repackage的执行中自动执行。
所以当你执行mvn clean package时,它会为你执行mvn clean package spring-boot:repacakge。为了检查它,转到目标目录,您将看到两个不同的jars文件,一个是由普通maven包生成的带有origin后缀的jars,另一个是由repackage生成的可执行文件
https://stackoverflow.com/questions/60894189
复制相似问题