1.常见jar包打包方式。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>com.imooc.security.StartWeb</mainClass> <!--指定jar执行的main方法-->
<addClasspath>true</addClasspath> <!--配置lib包读取路径-->
<classpathPrefix>lib/</classpathPrefix><!--路径为lib/;*需与下面输出的outputDirectory路径一致-->
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>
${project.build.directory}/lib <!--将项目依赖的jar包输出到,项目编译根路径的lib文件夹下-->
</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<finalName>security</finalName> <!--jar输出的最终名称-->
</build>
路径效果如下:
![](https://i-blog.csdnimg.cn/blog_migrate/57a76b65f0da31c60a1b454881b5031b.png)
lib文件夹:
2.springBoot项目打包方式,将lib包打包至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>
<finalName>security-core</finalName>
</build>
![](https://i-blog.csdnimg.cn/blog_migrate/9aec63d0b2607bae1fa351f47ac45fce.png)