第一部分: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环境的更多相关文章

  1. .NET 6 从0到1使用Docker部署至Linux环境

    前言 作为一名.Net菜鸟开发者,平时对Linux接触的并不多,项目部署这一块都是运维小哥顶着,但是作为混迹在云原生项目组的人咱也不能什么都不知道,该掌握的知识还是要懂的,所以借着这次机会,梳理一下项 ...

  2. 七. jenkins部署springboot项目(4)-linux环境--远程调试

    前提:linux环境,jenkins服务器和springboot服务器不在一台机器. linux环境,jenkins这里就不说了,主要说下和windows环境的不同. 1. jenkins服务器连接s ...

  3. mpdf部署到linux环境中遇到的问题

    首先遇到的问题未:Error - mPDF requires mb_string functions. Ensure that PHP is compiled with php_mbstring.dl ...

  4. abp框架angular 项目docker 手动部署到Linux环境中

    1.https://aspnetboilerplate.com/Templates 2.后端项目发布,在publish中abp默认已经存在DockerFile文件 3.修改后端文件中的DockerFi ...

  5. SpringBoot 部署到Linux开机自启动和运行

    前文 SpringBoot是一个强大的微服务框架,通常都是打包项目成Jar包,并部署到服务器上,本文以Linux服务器部署为主 开机自启动 博文:<https://www.cnblogs.com ...

  6. Spring Cloud Eureka集群部署到Linux环境

    还是三板斧:先改配置文件,支持集群,然后出包,上传到linux环境(3个节点),最后启动jar包跑起来. 1.在原eureka服务端代码(参见Greenwich.SR2版本的Spring Cloud ...

  7. SpringBoot部署到Linux服务器

    今天来谈一下,用SpringBoot写的Demo来配置到Linux服务器. 这里,我用阿里云服务器作为实例,SpringBoot集成了SpringMvC+ mybatis 框架,用maven管理jar ...

  8. Springboot 部署到linux(二)

    之前写了一篇部署的文章,但是打包时会运行所有的单元测试,如果不想测试的话,可以采用这种方式. 第一部分:打包 1.pom.xm添加配置 <plugin> <groupId>or ...

  9. spring boot打包部署到Linux环境

    打包部署说白了就两步:打包.部署.废话不多说,直接拿spring boot自动生成的项目骨架,再添加一个文件用来演示: package com.crocodile.springboot; import ...

随机推荐

  1. RuntimeError: Model class app_anme.models.User doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.---python学习错误记录

    untimeError: Model class app_anme.models.User doesn't declare an explicit app_label and isn't in an ...

  2. centos更换网易的源

    刚安装的centos系统下载软件可能很慢,就可以试一下更换为国内比较知名的源试试.现在知道的网易和中科大源很不错.那么怎么更换呢 1. cd /etc/yum.repos.d/           c ...

  3. 关于if判断和switch

    1.if判断: if(条件1){ 执行语句: } else if(条件2)}{ 执行语句2: } else{ 执行语句3: } if里面可以有无限个else if,而else if里面能嵌套无限个if ...

  4. React 实战系列:模块化

    本系列以实战为主,通过一个 TODO 应用来学习深入 React. 学习无捷径,唯一的办法就是 coding!coding!coding! 如有不足之处,欢迎大家批评指正,共同进步! 言毕,开始撸

  5. 动态规划Dynamic Programming

    动态规划Dynamic Programming code教你做人:DP其实不算是一种算法,而是一种思想/思路,分阶段决策的思路 理解动态规划: 递归与动态规划的联系与区别 -> 记忆化搜索 -& ...

  6. PLL详解

    PLL  时钟是时序逻辑的灵魂. 在实际应用中,时钟信号在频率或者相位上通常并不满足直接使用的需求,而内部时序逻辑又只能对时钟信号进行整数倍的分频,并且不能保证产生新时钟信号的相位稳定性,所以需要用到 ...

  7. Docker数据卷持久化

    Docker提供三种不同的方式将数据从宿主机挂载到容器中:volumes,bind mounts和tmpfs. volumes:Docker管理宿主机文件系统的一部分(/var/lib/docker/ ...

  8. P2886 [USACO07NOV]牛继电器Cow Relays

    题目描述 For their physical fitness program, N (2 ≤ N ≤ 1,000,000) cows have decided to run a relay race ...

  9. C# 温故之.NET 异步

    Bitter Coffee的温故之.NET 异步 相当经典(请允许我用经典两字),读了好几遍,留存.

  10. Python机器学习(基础篇---监督学习(朴素贝叶斯))

    朴素贝叶斯 朴素贝叶斯分类器的构造基础是贝叶斯理论.采用概率模型来表述,定义x=<x1,x2,...,xn>为某一n维特征向量,y∈{c1,c2,...ck}为该特征向量x所有k种可能的类 ...