spring-boot-maven-plugin create jar with dependencies



我的项目在日食中运行良好。我使用以下插件来构建带有依赖项的 jar。

<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<archive>
<manifest>
<mainClass>com.project.App</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>

在运行jar时,我收到以下错误。

2017-07-17 15:21:06.825 ERROR 17587 --- [           
main] o.s.boot.SpringApplication               : 
Application startup failed
org.springframework.beans.factory.BeanDefinitionStoreException: 
Failed to process import candidates for configuration class [com.project.App]; 
nested exception is java.lang.IllegalArgumentException: 
No auto configuration classes found in META-INF/spring.factories. 
If you are using a custom packaging, make sure that file is correct.

我发现这个解决方案使用 spring-boot-maven-plugin 并修改了我的代码,如下所示。

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<mainClass>com.project.App</mainClass>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

错误已修复。但是,通过此过程创建的 jar 不包含依赖项。是否可以使用 spring-boot-maven-plugin 构建带有依赖项的 jar?请提出解决方案。

只需使用它并运行mvn clean package前夕就可以了。

<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<addResources>false</addResources>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>your.main.class</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>

最新更新