打成jar包pom文件设置不赘述,修改pom.xml
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
以及设置<packaging>jar</packaging>等
下面说的是怎样分离出依赖包以及怎么运行
pom.xml添加配置信息,使打包的jar不包含依赖包
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.test.App</mainClass><!-- 这里修改对应项目的主入口-->
<layout>ZIP</layout>
<includes>
<include>
<groupId>nothing</groupId>
<artifactId>nothing</artifactId>
</include>
</includes>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
使用以下maven命令打包。
mvn clean dependency:copy-dependencies -DoutputDirectory=target/lib package
说明一下,这里的dependency:copy-dependencies -DoutputDirectory=target/lib是将程序依赖的jar包拷贝到target/lib目录里去,这也是解决问题的关键步骤。
执行后可以看到target目录有lib和我们需要jar包,把lib和jar包复制到一个文件夹,可以查看jar包里面的BOOT-INF里面已经没有lib这个目录了,那么执行时需要指定下,注意这里需要用cmd切换到目录,然后命令行执行
java -jar -Dloader.path=.,lib XXXXXX.jar