springboot打成jar包和war包的两种方式,并引入第三方jar包!

首先把需要引入的第三方jar包引入到本地项目中,在引用的模块下加一个lib文件夹

一、打成jar包

1.修改pom文件里的打包方式

<packaging>jar</packaging>

2.引入第三方依赖包

<!--本地sdk的第三方包-->
<dependency>
<groupId>com.alipay</groupId>
<artifactId>alipay-sdk-java-DEV20171211110402</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/alipay-sdk-java-DEV20171211110402.jar</systemPath>
</dependency>

3..修改pom文件中的build

<build>
<defaultGoal>clean package</defaultGoal>
<finalName>${project.artifactId}</finalName>
<plugins> <plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
<includeSystemScope>true</includeSystemScope><!--把第三方jar包打包进来-->
<mainClass>com.bosssoft.MpayMercPlatformWebApplication</mainClass><!--主程序启动类-->
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal><!-- 可以把依赖的包都打包到生成的Jar包中 -->
</goals>
</execution>
</executions>
</plugin> </plugins> <resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/**</include>
</includes>
<filtering>false</filtering>
</resource>
</resources> </build>

二、打成war包

1.修改pom文件的打包方式

<packaging>jar</packaging>

2.排除内嵌的tomact

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!--排除内嵌的tomcat,打成war包时开启,开发使用时需要注释掉-->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>

3.修改主程序启动类

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class MpayMercPlatformWebApplication extends SpringBootServletInitializer { /**
* 工程打成war需要继承SpringBootServletInitializer,重写configure方法
* @param application
* @return
*/
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(MpayMercPlatformWebApplication.class);
} public static void main(String[] args) {
SpringApplication.run(MpayMercPlatformWebApplication.class, args);
} }

4.修改build文件,添加plgin插件

<!--打成war包时开启-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<!--<resourceEncoding>UTF-8</resourceEncoding>-->
<!-- 释放将项目的类文件打成jar放到lib目录中。 打成jar的好处是:只修改class时,可以只更新jar。<archive></archive> -->
<attachClasses>true</attachClasses><!-- 把class打包jar作为附件 -->
<archiveClasses>true</archiveClasses><!-- 把class打包jar -->
<webResources>
<resource>
<directory>src/main/resources</directory>
<targetPath>WEB-INF/classes</targetPath>
<excludes>
<exclude>**/*.class</exclude>
</excludes>
</resource>
<!--引入第三方包-->
<resource>
<directory>${project.basedir}/lib</directory>
<targetPath>WEB-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
</webResources>
<packagingExcludes>
WEB-INF/lib/*-classes.jar
</packagingExcludes>
</configuration>
</plugin>

最新文章

  1. 笔记:Memory Notification: Library Cache Object loaded into SGA
  2. ListView+CheckBox实现全选 单击效果
  3. R语言-数据高级管理
  4. 解决yum报错集
  5. C语言(2)
  6. spring整合activemq发送MQ消息[queue模式]实例
  7. 转: svn合并分支到trunk
  8. HTML常用标签(自用,可能不严谨,勿怪)
  9. 一个ListView中显示不同的item(分组)
  10. Sql 执行删除修改之前添加备份
  11. Oracle 表三种连接方式(sql优化)
  12. OSGi 学习之路(4) - osgi的模块化 java在模块化的局限性
  13. k8s部署使用Dashboard(十)--技术流ken
  14. [USACO2008 Mar]土地购买
  15. Linux_查找文件
  16. python 函数进阶与闭包
  17. poj2632 【模拟】
  18. 43. 根据某个字段查询的重复的记录,例:查testId重复的记录
  19. Archlinux系统配置学习笔记(一)
  20. 由于防火墙限制无法访问linux服务器上的tomcat应用

热门文章

  1. Node.js 从零开发 web server博客项目[数据存储]
  2. python身体指数BMI
  3. 2.Scala安装配置和使用
  4. 本机浏览器无法访问linux的tomcat
  5. 理解 JAVABEAN EJB POJO
  6. element弹框的的this.$alert、this.$prompt方法用法
  7. PHP图片压缩类,高清无损直接用就ok啦
  8. 提升GAN的技术 Tips for Improving GAN
  9. chrome浏览器的两个坑,以及其他
  10. QT博客:QT学习之路