spring boot打jar包发布的方法

Spring的项目在spring boot之前一般我都是打成war包发布到tomcat的,但最近使用了spring boot 要打成jar包,一开始不理解为啥有要打成jar,war包不是很好吗?

另外一点是由于现在还不会打jar包,所以感觉没必要。经过一段时间的适应,感觉打jar包是很有必要的,而且发布也很方便了省去了安装tomcat等中间件。

说下如何打jar包把,其实很简单,主要是配置好pom.xml文件就可以了,关键点如下:

一定要写jar。

在<bulid>中添加如下配置:

<build>

<!-- 打成jar包的名称 -->

<finalName>gateway</finalName>

<plugins>

<!-- 需要引用的jar包 -->

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

</plugins>

<!-- <finalName>gateway</finalName> -->

</build>

<!-- 仓库地址 -->

<repositories>

<repository>

<id>spring-milestone</id>

<url>http://repo.spring.io/libs-release</url>

</repository>

</repositories>

配置好这些后,使用工具,我使用的是myeclipse,mvan update项目。

使用工具myeclipse打jar包。

第一步:使用debug configurations 配置的方式打包

第二步:显示出debug configuratons 的页面,

1选中Maven Bulid 下面的项目;

2 Goals选项中输入package

3 点击Debug按钮。

第三步:控制台输出了 1处的信息:BUILD SUCCESS

2项目的target文件夹下处理了 gateway.jar说明jar包打包完毕。

第四步测试jar包是否可用

使用命令窗体,切入到jar存在的目录;执行java –jar ***.jar

最好出现下图信说明jar启动完毕。

使用浏览器测试。项目可用登录。

第五步关闭jar包启动的线程。

1.如果是window系统,直接关闭命令窗体就可以了。

2.如果是linux系统,使用ps命令找到对应线程 ,在使用kill命令杀死线程。

再说最简单的打jar方式,使用命令切入到项目的路径下,执行:mvn package 就会自己打包的,打包完成后在项目输出目录target中可用看到对应的jar包。

已经开始打包了。

打包完成。

Jar会打了,那如果要打war包那。

打spring boot项目建议还是不要打war包,因为这是淘汰的方式。但如果要打,在pom.xml文件中配置:

<bulid>中配置如下信息,就可以使用eclipse导出war包了:

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-war-plugin</artifactId>

<configuration>

<warSourceExcludes>src/main/resources/**</warSourceExcludes>

<warName>gateway</warName>

</configuration>

</plugin>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Spring boot 打jar包分离lib的正确配置方式

    前言 Springboot 打jar包分离lib,配置文件的方式,网上可以搜到的我都没试通.跟刘大神(大神没有博客,很可惜)讨论后,给出了这么一个解决方案,供大家参考. 部署环境 window 10 redhat 6.4 其他版本没有尝试,应该也是可以的 POM.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.

  • Spring Boot Maven 打包可执行Jar文件的实现方法

    Maven pom.xml 必须包含 <packaging>jar</packaging> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <fork>

  • 深入Spring Boot实现对Fat Jar jsp的支持

    spring boot 对于jsp支持的限制 对于jsp的支持,Spring Boot官方只支持了war的打包方式,不支持fat jar.参考官方文档: https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-web-applications.html#boot-features-jsp-limitations 这里spring boot官方说是tomcat的问题,实际上是sp

  • Spring Boot打jar包后配置文件的外部优化配置方法

    在未进行任何处理的情况下,Spring Boot会默认使用项目中的 application.properties 或者 application.yml 来读取项目所需配置. 我这里只记录几种自己所用到的. 访问命令行属性 在默认的情况下, SpringApplication 会将任何命令行选项参数(以 - 开头 --server.port=9000)转换为 property 并添加到Spring环境当中. 例如,启动项目的时候指定端口: java -jar analysis-speech-too

  • spring boot jar的启动原理解析

     1.前言 近来有空对公司的open api平台进行了些优化,然后在打出jar包的时候,突然想到以前都是对spring boot使用很熟练,但是从来都不知道spring boot打出的jar的启动原理,然后这回将jar解开了看了下,与想象中确实大不一样,以下就是对解压出来的jar的完整分析. 2.jar的结构 spring boot的应用程序就不贴出来了,一个较简单的demo打出的结构都是类似,另外我采用的spring boot的版本为1.4.1.RELEASE网上有另外一篇文章对spring

  • Spring Boot创建非可执行jar包的实例教程

    我们经常会有这种场景,只需要把Spring Boot打成普通的jar包,不包含配置文件,供其他程序应用 本文介绍如何使用Maven将Spring Boot应用打成普通的非可执行jar包. 配置maven-jar-plugin <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugi

  • Spring Boot 把配置文件和日志文件放到jar外部

    如果不想使用默认的application.properties,而想将属性文件放到jar包外面,可以使用如下两种方法: 只能设置全路径.因为Java -jar运行jar包时,无法指定classpath(无论通过参数还是环境变量,设置的classpath都会被覆盖). 方法1:命令行传参指定spring.config.location java -jar -Dspring.config.location=D:\zTest\config\config1.properties springbootre

  • springboot工程jar包部署到云服务器的方法

    首先,springboot在这里不多做介绍了,关于怎么打成jar包,我相信凡是用过的同学都知道吧! 然后就是将jar包上传到云服务器了,这个有好些工具的,博主在这里也不多做说明了! 咱们还是直奔主题吧.... 运行命令:java -jar xxx.jar,然后springboot工程的内置tomcat就开启了,项目已经启动,接下来你就可以访问了. 感觉一切ok,其实你已经掉到坑里了... 怎么回事呢? 当你关闭当前的xshell 命令界面时,再次访问就失效了,why? why? why? 这是因

  • spring boot项目fat jar瘦身的实现

    一.项目背景 spring cloud构建spring boot项目,精细化各项目的层次,达到降低耦合度的目的,项目间基于restful通信. 在对项目打包过程中,使用spring-boot-maven-plugin插件打包,生成的是fat jar,解压该jar包,会发现项目依赖的jar包存放于BOOT-INF下的lib文件夹中,分析多个子项目后会发现,相同的jar包占绝大多数,然后每次部署于线上环境,各系统的共同jar在服务器上其实是重复搁置的,因此自然会想到是否有方法将共同的jar包,或是不

  • spring boot打jar包发布的方法

    Spring的项目在spring boot之前一般我都是打成war包发布到tomcat的,但最近使用了spring boot 要打成jar包,一开始不理解为啥有要打成jar,war包不是很好吗? 另外一点是由于现在还不会打jar包,所以感觉没必要.经过一段时间的适应,感觉打jar包是很有必要的,而且发布也很方便了省去了安装tomcat等中间件. 说下如何打jar包把,其实很简单,主要是配置好pom.xml文件就可以了,关键点如下: 一定要写jar. 在<bulid>中添加如下配置: <b

  • Spring boot打包jar分离lib和resources方法实例

    为什么要配置.依赖文件分离: 1.在传统jar包中,所有文件都打包到一个jar包中,jar非常臃肿,在进行服务更新部署时非常不便,而且传输不稳定时导致传输失败.如果过实行文件分离.在依赖不改变的情况下,仅仅上传更新后的 编译文件是非常方便的. 如果要修改一些配置文件:properties.xml,静态文件等可以直接在服务器上编辑. 那么怎么实行配置.依赖文件分离呢? 插件介绍 maven-jar-plugin 这个插件式专门用来打包用的,可以配置需要打包进去的文件,程序的入口类等. maven-

  • Spring Boot应用通过Docker发布部署的流程分析

    目录 手动部署 1.idea创建spring boot项目 2.项目打成 Jar 包 3.构建 docker image 4.查看并运行镜像 插件部署 运行推送命令 将Spring Boot项目部署到docker中有两种方法,手动部署和插件部署 手动部署 1.idea创建spring boot项目 pom.xml文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http:/

  • spring boot 打包jar jar没有主目录清单问题的完美解决方法

    1.在POM.xml文件下添加如下代码:注意:version.configuration.executions三个标签是我后来查找添加的,网上解决方案要么没有这三个要么不一样,我试了都不行,而且我在我电脑试了这三个标签必须有: 2.如果没有version标签会在生成时会报错. 3.如果没有configuration.executions两个标签生成的jar会报jar没有主目录清单错误: 哀  折腾一天,没办法谁让自己是小白那.还有一个主意的:packaging标签页必须有: <packaging

  • Spring Boot使用Druid和监控配置方法

    Spring Boot默认的数据源是:org.apache.tomcat.jdbc.pool.DataSource Druid是Java语言中最好的数据库连接池,并且能够提供强大的监控和扩展功能. 下面来说明如何在 Spring Boot 中配置使用Druid (1)添加Maven依赖 (或jar包)\ <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId&g

  • 移动开发Spring Boot外置tomcat教程及解决方法

    springboot微服务内置了tomcat,在工程目录下执行:mvn clean package,可以将项目打成jar,通过java -jar jar包名.jar启动项目. 有哪些场景需要将springboot打成war包去部署呢? 1.一个tomcat管理多个项目 2.springboot整合jsp等 解决方法: 1.<packaging>jar</packaging>中的jar改成war 2.引入依赖: <dependency> <groupid>or

  • Spring Boot打war包的实例教程

    Spring Boot除了可以打可执行jar包外,也支持传统的war包.本文介绍如何使用Spring Boot构建传统war包. Spring Boot打war包步骤如下: 1.在pom.xml里定义打包类型 <packaging>war</packaging> 2.添加Spring Boot启动器(也可通过parent) <dependencyManagement> <dependencies> <dependency> <!-- Imp

  • 详解Spring Boot 部署jar和war的区别

    本文介绍了Spring Boot 部署jar和war两种方式的区别,分享给大家,具体如下: 1. packaging的方式不同,一种设置成jar一种是war <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org

随机推荐