idea打包springboot+maven项目并发布在linux上
2018年11月13日我亲测有效的,很简单的,借鉴博客:https://blog.csdn.net/smilecall/article/details/56288972
第一步:随便建一个maven类型的springboot项目:
因为我这项目是专门用来测thymeleaf的,是一个springboot+thymeleaf的测试项目,并没有连接数据库操作,所以application.yml的配置很简单,配了一个端口和一个thymeleaf配置

第二步:因为要用maven打包,所以要在pom.xml里配置maven打包插件,如下:(要配置两地方我都圈出来了)


打开maven视图:操作maven打包


接下来在本地cmd窗口运行一下这个jar包:运行java包命令:java -jar thymeleaf-1.0-SNAPSHOT.jar

本地访问成功图如下:localhost:8082

》》》》》》》下面上传到linux上运行此jar包,并在浏览器上打开》》》》》》》》》》》》》》》》》》》》》》》》
把xxx.jar包随便丢到一个目录下:backup,out.log,thymeleaf-out.log这些文件不用管

在linux上执行运行xxx.jar包命令:java -jar thymeleaf-1.0-SNAPSHOT.jar
(出现spring日志打印说明运行成功,下面也没报错)

在浏览器上输入地址,查看一下能否打开项目里面的页面,成功如下:
【一些什么后台运行命令,和写脚本文件命令运行自行百度,下面稍后我也会作上笔记:用脚本执行xxx.jar包命令】

》》》》》》》》写一个xxx.sh脚本去运行xxx.jar包》》》》》》》》》》》》》》》》》》
(事先说明:linux上要安装好jdk环境,我安的是1.8的jdk)
#写此startOrStopJava.sh脚本的目的是为了配置jenkins系统自动部署项目,这里只是简单记录一下。下篇博客将是配置jenkins自动部署springboot项目
写一个脚本(这个脚本位置随便放,建议最好放在xxx.jar旁边):vi startOrStopJava.sh
内容如下:
#保证该脚本能被kconfig识别
#!/bin/sh
# chkconfig:
# description:auto_run #程序名
RUN_NAME="thymeleaf-1.0-SNAPSHOT.jar" #jar包位置(根据自己的情况,这是我xxx.jar包存放目录)和 运行日志输出位置log
JAVA_OPTS=/usr/local/java/testJar/thymeleaf-1.0-SNAPSHOT.jar
LOG_OPTS=/usr/local/java/testJar/thymeleaf-out.log #开始方法
start() {
nohup java -jar $JAVA_OPTS >$LOG_OPTS &
echo "$RUN_NAME started success."
} #结束方法
stop() {
echo "stopping $RUN_NAME ..."
kill - `ps -ef|grep $JAVA_OPTS|grep -v grep|grep -v stop|awk '{print $2}'`
} case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Userage: $0 {start|stop|restart}"
exit
esac
运行的话,在此startOrStopJava.sh脚本当前目录,执行命令:./startOrStopJava.sh start
关闭命令:./startOrStopJava.sh stop
重启命令:./startOrStopJava.sh restart
脚本运行成功图如下:

浏览器也访问到页面,就不做展示了
1111
idea打包springboot+maven项目并发布在linux上的更多相关文章
- 工具IDEA 配置springboot+maven项目
工具IDEA 配置springboot+maven项目 首先安装IDEA,至于怎么安装就不介绍了.. 第一步 配置maven环境 首先安装maven,先在网上下载一个maven包.在IDEA的sett ...
- 【适合公司业务】全网最详细的IDEA里如何正确新建【普通或者Maven】的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(类似eclipse里同一个workspace下【多个子项目】并存)(图文详解)
不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在Myeclipse里,则是File -> new -> ...
- springboot maven项目,为什么build成功,build path也没错误,project-->clean 也没用,项目上面还是有个红x呢?
springboot maven项目,为什么build成功,build path也没错误,project-->clean 也没用,项目上面还是有个红x呢? 看错误信息有提示: Descript ...
- 全网最详细的IDEA里如何正确新建普通的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(类似eclipse里同一个workspace下【一个子项目】并存)(图文详解)
不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在Myeclipse里,则是File -> new -> ...
- 全网最详细的Eclipse里如何正确新建普通的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(图文详解)
不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在Myeclipse里,则是File -> new -> ...
- 全网最详细的MyEclipse里如何正确新建普通的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(图文详解)
不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在eclipse里,则是File -> new -> ...
- springBoot maven项目打成jar包
springBoot项目打包springBoot项目打包最常用且最简单的方式是用springBoot的打包plugin <plugin> <groupId>org.spring ...
- jenkins打包java maven项目
一.maven本地配置 1.修改apache-maven-3.6.1\conf\settings.xml文件,把仓库配置成本地仓库 <localRepository>D:\apache-m ...
- SpringBoot Maven项目 Helloworld 测试
SpringBoot 化繁为简,简化配置 SpringBoot官方:http://projects.spring.io/spring-boot/SpringBoot使用介绍:http://blog.c ...
随机推荐
- axios超时timeout拦截
应用场景: 在网络请求中,可能不可避免的会遇到网络差或者请求超时的情况,这时候,如果你采用的技术是axios,那就可以通过设置拦截器捕获这个异常情况,并做出下一步处理. 代码实践: ① 设置拦截器,返 ...
- php 验证身份证号
function validation_filter_id_card($id_card){ if(strlen($id_card)==18){ return idcard_checksum18($id ...
- ssm框架的整合搭建(二)
maven简单项目的创建前面已经完成了,下面开始依赖包和配置文件的编写 好好努力每一天!!!!!! 项目结构看这里 1.首先,依赖包pom.xml <project xmlns="ht ...
- 【ES6】=>含义
=>是es6语法中的arrow function (x) => x + 6 相当于 function(x){ return x + 6; }; var ids = this.sels.ma ...
- ubantu 安装 wget
sudo apt-get update sudo apt-get install wget wget
- Shell 文本处理三剑客之grep
grep ♦参数 -E,--extended-regexp 模式是扩展正则表达式 -i,--ignore-case 忽略大小写 -n,--line-number 打印行号 -v,--invert-ma ...
- 开源的许可证GPL、LGPL、BSD、Apache 2.0
软件开发者要开源软件,不单单是开放源代码就可以了,选择一种许可证很重要,一个许可证之于软件就相当于价值观之于普通人,代表了这个软件的基本品性.一个错误的许可证选择可能会直接导致整个项目的失败.各种开源 ...
- C语言初学者关于数组指针的深度讨论
一.什么是数组指针? 即是数组的指针.首先它是一个指针,指向数组,指针本身占4个字节. 二.数组指针的使用 int a[3][5]; int (*p)[5]; p=&a; 第二行定义了一个数组 ...
- Java多线程(六)——线程让步
一.yield()介绍 yield()的作用是让步.它能让当前线程由“运行状态”进入到“就绪状态”,从而让其它具有相同优先级的等待线程获取执行权:但是,并不能保证在当前线程调用yield()之后,其它 ...
- 洛谷 P2802 回家
题目链接 https://www.luogu.org/problemnew/show/P2802 题目描述 小H在一个划分成了n*m个方格的长方形封锁线上. 每次他能向上下左右四个方向移动一格(当然小 ...