SpringBoot 部署到linux环境
第一部分:Springboot项目部署
说明:工具使用的是IEDA
第一:项目打包
1.在pom文件中添加插件
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2.打包(jar)
idea的右侧有个Maven的标识,
1.点击maven -->Lifecycle -->clean,clean成功以后
2.点击maven -->Lifecycle -->install.
注意:打包的时候,所有的单元测试都会运行,如果测不通的话会报错。
3.打包成功以后,可以在cmd启动先测试一下(java -jar XXX.jar)。OK的话就可以部署啦。
第二:部署到linux
1.执行 sudo yum install lrzsz -y 命令,这个命令是将安装一个能下载、上传的软件
2.执行 rz 命令,这是上传命令,执行之后,选择文件,就可以上传了
3.执行 nohup java -jar demo-0.0.1-SNAPSHOT.jar & 命令 执行这个命令后台就可以启动这个jar包了
第二部分:部署遇到的问题以及解决方案
部署项目的时候,报错:Exception in thread "main" java.lang.UnsupportedClassVersionError
百度得知:这个一般是由于高版本编译低版本运行导致的,jdk版本不一致的问题。
解决思路:解决措施就是保证jvm(java命令)和jdk(javac命令)版本一致。
linux版本,在命令行中分别输入java -version和javac -version命令来查看版本是否一致。
结果:linux测试环境的版本是JDK1.7
解决措施:安装JDK1.8
第三部分:JDK1.8安装
准备:
1.工具 Xshell
下载地址:https://www.netsarang.com/download/down_xsh6.html?token=dlBNZDhZeXpWUGhJRGZHU201OEFNQUBlZmw1eWlFWWI5cTJHYlN2V0RZT2ZB
2.下载 linux JDK1.8
下载地址:https://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html
操作:
1.执行命令:mkdir /usr/java 创建java目录,存放jdk1.8.
2.执行命令:rz 上传JDK1.8压缩包
3.执行命令:tar -zvxf jdk-8u1911-linux-x64.tar.gz 对导入的压缩包进行解压
4.执行命令:ls /usr/java/ 查看是否存在解压后的文件
5.执行命令:vim /etc/profile 修改环境变量
用vim编辑器来编辑profile文件,在文件末尾添加一下内容(按“i”进入编辑):
export JAVA_HOME=/usr/java/jdk1.8.0_191
export JRE_HOME=${JAVA_HOME}/jre
export JAVA_BIN=/usr/java/jdk1.8.0_191/bin
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH} 注意:这里可能还会有其他的路径,不要动原来的,直接使用:进行分隔就OK啦
编辑完之后,执行命令 :wq! 直接保存并退出
6.执行命令:source /etc/profile 让profile文件立即生效
7.执行命令:java -version 测试是否安装成功
第四部分:切换到JDK1.8环境下部署
1.执行命令:cd /usr/java/jdk1.8.0_191/ 到jdk目录下
2.执行命令:rz 上传Springboot项目的jar包
3.执行命令:cd /usr/java/jdk1.8.0_191/bin/ 切换到bin目录下
4.执行命令:nohup ./java -jar ../xxx.jar & 启动项目
5.执行命令:ps -aux | grep 端口号 查看进程
SpringBoot 部署到linux环境的更多相关文章
- .NET 6 从0到1使用Docker部署至Linux环境
前言 作为一名.Net菜鸟开发者,平时对Linux接触的并不多,项目部署这一块都是运维小哥顶着,但是作为混迹在云原生项目组的人咱也不能什么都不知道,该掌握的知识还是要懂的,所以借着这次机会,梳理一下项 ...
- 七. jenkins部署springboot项目(4)-linux环境--远程调试
前提:linux环境,jenkins服务器和springboot服务器不在一台机器. linux环境,jenkins这里就不说了,主要说下和windows环境的不同. 1. jenkins服务器连接s ...
- mpdf部署到linux环境中遇到的问题
首先遇到的问题未:Error - mPDF requires mb_string functions. Ensure that PHP is compiled with php_mbstring.dl ...
- abp框架angular 项目docker 手动部署到Linux环境中
1.https://aspnetboilerplate.com/Templates 2.后端项目发布,在publish中abp默认已经存在DockerFile文件 3.修改后端文件中的DockerFi ...
- SpringBoot 部署到Linux开机自启动和运行
前文 SpringBoot是一个强大的微服务框架,通常都是打包项目成Jar包,并部署到服务器上,本文以Linux服务器部署为主 开机自启动 博文:<https://www.cnblogs.com ...
- Spring Cloud Eureka集群部署到Linux环境
还是三板斧:先改配置文件,支持集群,然后出包,上传到linux环境(3个节点),最后启动jar包跑起来. 1.在原eureka服务端代码(参见Greenwich.SR2版本的Spring Cloud ...
- SpringBoot部署到Linux服务器
今天来谈一下,用SpringBoot写的Demo来配置到Linux服务器. 这里,我用阿里云服务器作为实例,SpringBoot集成了SpringMvC+ mybatis 框架,用maven管理jar ...
- Springboot 部署到linux(二)
之前写了一篇部署的文章,但是打包时会运行所有的单元测试,如果不想测试的话,可以采用这种方式. 第一部分:打包 1.pom.xm添加配置 <plugin> <groupId>or ...
- spring boot打包部署到Linux环境
打包部署说白了就两步:打包.部署.废话不多说,直接拿spring boot自动生成的项目骨架,再添加一个文件用来演示: package com.crocodile.springboot; import ...
随机推荐
- 洛谷1196【NOI2002】题解
题目描述 公元五八○一年,地球居民迁至金牛座α第二行星,在那里发表银河联邦创立宣言,同年改元为宇宙历元年,并开始向银河系深处拓展. 宇宙历七九九年,银河系的两大军事集团在巴米利恩星域爆发战争.泰山压顶 ...
- 【tomcat环境搭建】一台服务器上部署多个tomcat
一台服务器上面如何部署多个tomcat?其实linux和windows步骤都差不多,都是: 第一步:解压tomcat安装包后,复制一份并且重命名:多个tomcat就多复制一份 第二步:将复制的tomc ...
- java8中optional和.stream().map()
使用optional的好处:是一个可以包含或不可以包含非空值的容器对象,更加友好的处理程序中的空对象. Optional<T>有方法 isPresent() 和 get() 是用来检查其包 ...
- python之路-python2.x与python3.x区别
Python崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. Python2.x 与 Python3.x的区别: python2.x:源码混乱,重复代码较多,冗余. python3.x:源码规范,崇 ...
- Windows Server 2008 R2 服务器系统安装及配置全过程图文详解
前言 本文主要介绍了 windows Server 2008 R2 服务器系统的安装及相关配置. 介绍的是以优盘的方式安装. 写这篇博文的目的一来是为了供有需要的网友参考, 二来自己也在此做个记载. ...
- Python随笔--Pickle
遇到问题:不能文件名为pickle.py
- NFS、FTP介绍
第二十五课 NFS.FTP介绍 目录 一. NFS介绍 二.NFS服务端安装配置 三.NFS配置选项 四.exportfs命令 五.NFS客户端问题 六.FTP介绍 七.使用vsftpd搭建ftp 八 ...
- wifi编辑 centos
ifconfig -a sudo iw dev 设置名称 scan
- Hibernate原理及应用
Hibernate工作原理及为什么要用? 原理:1.通过Configuration().configure();读取并解析hibernate.cfg.xml配置文件2.由hibernate.cfg.x ...
- Promise学习使用
Promise是承诺的意思,“承诺可以获取异步操作的消息”,是一种异步执行的方案,Promise有各种开源实现,在ES6中被统一规范,由浏览器直接支持. Promise 对象有三种状态:pending ...