springboot项目以jar包运行的操作方法


Posted in Java/Android onJune 30, 2021

  公司的springboot项目本来是打war包的,突然要求改成jar包,一路上碰到一些坑,在此记录一下。

一、pom文件配置  

1、打包方式改成jar

<packaging>jar</packaging>

2、配置可执行jar包的maven插件

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!-- 如果有依赖外部jar,则必须加上此配置includeSystemScope-->
                <configuration>
                    <includeSystemScope>true</includeSystemScope>
                </configuration>
            </plugin>
        </plugins>
    </build>

3、引入外部jar依赖(可选)

  如果项目中引入了外部jar,可在项目根目录创建lib文件夹,将jar包放入lib中:

springboot项目以jar包运行的操作方法

  然后在pom文件中引入jar包:

springboot项目以jar包运行的操作方法 

  PS:如果项目以war的形式打包,并且引入了外部jar,则maven插件的配置如下

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.6</version>
                <configuration>
                    <webResources>
                        <resource>
                            <directory>${project.basedir}/lib</directory>
                            <targetPath>WEB-INF/lib</targetPath>
                            <includes>
                                <include>**/*.jar</include>
                            </includes>
                        </resource>
                    </webResources>
                </configuration>
            </plugin>
        </plugins>
    </build>

二、打包运行  

1、打包

  打包命令,很简单:

mvn install

2、运行

  在生产和测试环境,一般都需要保持进程一直在后台运行,断开终端也不中断,则需要执行以下命令:

nohup java -jar test.jar &>>log.out &

三、配置文件优先级

  spring boot会按以下顺序去寻找配置文件:

  1、“当前目录”的/config文件夹下  

2、“当前目录”下  

3、classpath的/config文件夹下  

4、classpath下

  注意事项:

  • 当前目录指的是执行java命令所在目录,如果是通过shell脚本执行的java命令,则当前目录指shell脚本所在目录,如果在shell脚本中cd到某一目录再执行的java命令,则当前目录就指cd后的目录。
  • 不同优先级的配置文件都能被读到,但相同的配置项,优先级高的配置文件的配置会覆盖优先级低的配置文件的配置。
  • jar包内的配置文件不方便修改,生产上我们一般会将配置文件放在jar包外。

  生产上可以直接将配置文件放在jar包所在目录同级的config目录,然后在脚本中cd到jar包所在目录,执行java命令就可以读到配置文件啦。

参考:https://www.cnblogs.com/taiyonghai/p/9561334.html

到此这篇关于springboot项目以jar包运行的操作方法的文章就介绍到这了,更多相关springboot jar包内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Java/Android 相关文章推荐
Java基于字符界面的简易收银台
Jun 26 Java/Android
mybatis 获取无数据的字段不显示的问题
Jul 15 Java/Android
SpringRetry重试框架的具体使用
Jul 25 Java/Android
mybatis3中@SelectProvider传递参数方式
Aug 04 Java/Android
利用Sharding-Jdbc进行分库分表的操作代码
Jan 22 Java/Android
Spring this调用当前类方法无法拦截的示例代码
Mar 20 Java/Android
Java 超详细讲解IO操作字节流与字符流
Mar 25 Java/Android
Spring事务管理下synchronized锁失效问题的解决方法
Mar 31 Java/Android
Spring Data JPA框架自定义Repository接口
Apr 28 Java/Android
Java 死锁解决方案
May 11 Java/Android
Springboot中如何自动转JSON输出
Jun 16 Java/Android
Spring Cloud OpenFeign模版化客户端
Jun 25 Java/Android
Springboot使用Spring Data JPA实现数据库操作
Jun 30 #Java/Android
如何给HttpServletRequest增加消息头
解决ObjectMapper.convertValue() 遇到的一些问题
Jun 30 #Java/Android
Java基础之详解HashSet的使用方法
Java实现多文件上传功能
Jun 30 #Java/Android
Java基础之线程锁相关知识总结
Jun 30 #Java/Android
详解Spring事件发布与监听机制
You might like
php密码生成类实例
2014/09/24 PHP
详解Grunt插件之LiveReload实现页面自动刷新(两种方案)
2015/07/31 PHP
visual studio code 调试php方法(图文详解)
2017/09/15 PHP
lnmp安装多版本PHP共存的方法详解
2018/08/02 PHP
Span元素的width属性无效果原因及解决方案
2010/01/15 Javascript
javascript权威指南 学习笔记之null和undefined
2011/09/25 Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
2013/11/19 Javascript
jquery 提示信息显示后自动消失的具体实现
2013/12/18 Javascript
JQuery实现鼠标滚轮滑动到页面节点
2015/07/28 Javascript
JavaScript操作select元素和option的实例代码
2016/01/29 Javascript
Javascript中的对象和原型(二)
2016/08/12 Javascript
Vue.js组件tree实现无限级树形菜单
2016/12/02 Javascript
JS html时钟制作代码分享
2017/03/03 Javascript
基于JavaScript实现弹幕特效
2020/08/27 Javascript
Node.js readline 逐行读取、写入文件内容的示例
2018/03/01 Javascript
vue-router 源码实现前端路由的两种方式
2018/07/02 Javascript
Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
2019/05/08 Javascript
基于leaflet.js实现修改地图主题样式的流程分析
2020/05/15 Javascript
react项目从新建到部署的实现示例
2021/02/19 Javascript
[01:30:54]《加油DOTA》 第三期
2014/08/18 DOTA
使用Python的Twisted框架编写简单的网络客户端
2015/04/16 Python
Python tkinter实现的图片移动碰撞动画效果【附源码下载】
2018/01/04 Python
Python实现的删除重复文件或图片功能示例【去重】
2019/04/23 Python
基于python调用psutil模块过程解析
2019/12/20 Python
pandas 中对特征进行硬编码和onehot编码的实现
2019/12/20 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
英国最大最好的无人机商店:Drones Direct
2019/07/12 全球购物
顶岗实习计划书
2014/01/10 职场文书
《宿建德江》教学反思
2014/04/23 职场文书
环保倡议书格式范文
2014/05/14 职场文书
工作岗位职责范本
2015/02/15 职场文书
电影小兵张嘎观后感
2015/06/03 职场文书
集结号观后感
2015/06/08 职场文书
六一文艺汇演主持词
2015/06/30 职场文书
入党申请书怎么写?
2019/06/11 职场文书
一篇文章带你搞懂Python类的相关知识
2021/05/20 Python