目标:java
1.将普通的MAVEN JAVA工程打包成SpringBoot可运行的jar包spring
2.将application.yml和log4j2.xmlapp
SpringBoot项目打包要求将依赖的jar所有打进去,由于SpringBoot的自动配置须要用到里面的spring.factory文件,该文件是自动配置的关键步骤之一maven
若是在IDEA或者ECLPSE里面使用直接建立SpringBoot工程,而后打包便可完成上面的需求,但我是在Idea里面建立的普通MAVEN工程,而后打包依赖的任何JAR都没有打进去ide
而后百度了半天,分享一下:spring-boot
在<build></build>标签中添加以下配置测试
<plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>1.5.9.RELEASE</version> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins>
执行打包操做ui
打包出来结果spa
查看打包内部结果3d
在pom.xml文件中的<build></build>增长以下内容
<resources> <resource> <directory>src\main\resources</directory> <excludes> <exclude>application.yml</exclude> <exclude>log4j2.xml</exclude> </excludes> </resource> </resources>
从新打包
对比发现application.yml和log4j2.xml没有在jar包中
启动测试
java -jar provider-1.0.0.jar --logging.config=./log4j2.xml
启动正常
日志也正常输出
结束