首页 > 系统相关 >java项目部署到linux

java项目部署到linux

时间:2024-08-20 23:22:29浏览次数:8  
标签:Shell java 部署 jar usr linux local 端口号

手工部署

打包

获取打包的jar包

在这里插入图片描述

将jar包放到linux中(可通过xftp软件)的 usr/local/ruiji

在这里插入图片描述

执行jar包

java -jar jar包名称

指定端口:
java -jar jar包名称 --server.port=端口号

如果端口被占用,查看端口号命令
netstat -tuln | grep :8080

根据端口号杀死进程
lsof -i :8080 -->根据端口号找到PID
由PID杀死进程
kill PID

在这里插入图片描述
此处有个问题就是你运行的项目会霸屏,就是无法执行其他linux命令,需要把项目改为后台运行

后台运行项目

命令:

nohup :用于不挂断地运行指定命令,退出终端不会影响程序的运行
&:让命令在后台运行

后台运行java -jar命令,并将日志输出到hello.log文件:
nohup java -jar jar包 &>hello.log & 

在这里插入图片描述
在这里插入图片描述

如何关闭项目

查到进程,杀死进程跟上面一样用kill
ps -ef | grep java

当前项目有一个问题,未导入数据库到linux里的mysql

通过shell脚本自动部署项目

1、在Linux中安装Git

yum list git   ----列出git安装包
yum install git 在线安装
安装过程中如果有选择,选择y

2、在Linux中安装maven

tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local
vim /etc/profile
修改配置文件,加入如下内容
export MAVEN HOME=/usr/local/apache-maven-3.5.4
expOrt PATH=$JAVA HOME/bin:$MAVEN HOME/bin:$PATH

source /etc/profile
mvn -version  检查是否配置生效
vim /usr/local/apache-maven-3.5.4/conf/settings.xml   修改配置文件内容如下
<localRepository>/usr/local/repo</localRepository>

3、为用户授予执行Shell脚本的权限

将资料中提供的Shell脚本文件复制到Linux  bootStart.sh (自己在local中创建一个目录放里边)

在这里插入图片描述

为用户授权:

chmod 777 bootStart.sh

4、编写Shell脚本(拉取代码、编译、打包、启动)

拉取代码:

一般项目都放在 /usr/local/自己创一个目录放-->由于 bootStart.sh 里面默认放到了cd /usr/local/helloworld,自行修改
git clone 项目地址

5、执行Shell脚本

./ bootStart.sh

标签:Shell,java,部署,jar,usr,linux,local,端口号
From: https://blog.csdn.net/weixin_57689217/article/details/141304996

相关文章

  • java: 错误: 无效的源发行版:17
    错误信息java:错误:无效的源发行版:17原因这个错误通常表示你的Java编译器版本不支持你指定的Java版本。解决方式pom.xml版本改为18或8<properties><java.version>18</java.version></properties>设置:改完直接finish键盘输入1.8,按自己......
  • BT5 2011.4.社会工程学.1.JAVA
    4.社会工程学工具 内容简介第一部分:JavaAppletAttackMethod第二部分:CredentialHarvesterAttackMethod 第一部分JavaAppletAttackMethod 拓扑介绍 SET介绍TheSETisanadvanced,multi-function,andeasytousecomputerassistedsocialengineering......
  • 在Linux中,负载均衡的作用有哪些?
    在Linux环境中,负载均衡是一种关键技术,用于提高系统的可用性、可扩展性和性能。它通过将进入的流量(如网络请求、数据库查询等)分散到多个后端服务器或服务实例上,从而避免单点过载,优化资源利用,并确保服务的连续性和高效性。以下是负载均衡的几个主要作用:1、提高系统可用性:通过将请......
  • Java微信授权登录小程序接口
    1.微信授权登录小程序的流程是什么微信授权登录小程序的流程是一个涉及前端和后端交互的过程,主要目的是让用户能够使用微信账号快速登录小程序,避免重复输入用户名和密码。以下是该流程的详细步骤:1.1前端操作(1)触发登录:用户在小程序中点击“登录”按钮或进入需要登录的页面时,系......
  • 【Linux网络】带你用生活例子来理解什么是协议
    协议一、为什么要有协议?二、什么是协议?三、思考:只要通信的两台主机,约定好协议就可以了吗?四、协议分层五、数据是如何发送的?一、为什么要有协议?协议的产生是为了解决问题,那么解决什么问题?如何处理发来的数据长距离传输的数据丢失问题如何定位主机的问题怎么保证......
  • 【Linux】撕开fork的本质,深入了解fork函数原理
     目录一、如何使用fork函数?二、fork函数如何产生两个返回值?三、if,else语句怎么会同时执行?为什么i会有两个不同的值?子进程创建出来之后去哪里了?四,为什么给父进程返回子进程的PID,子进程返回0?一、如何使用fork函数?在Linux操作系统里,我们可以通过调用fork函数来创建子进程......
  • Java的开发工具有哪些?这十款工具大厂都在用!
    Nessus工具介绍与使用教程工具介绍Nessus是一款广泛使用的网络漏洞扫描工具,由TenableNetworkSecurity开发。它能够帮助网络管理员和安全专业人员识别网络中的安全漏洞、配置错误和潜在的安全威胁。Nessus提供全面的漏洞检测功能,包括操作系统漏洞、应用程序漏洞、......
  • Java 安全编程:揭秘加密与解密的艺术
    引言在这个数字化时代,信息安全已成为各行各业关注的焦点。无论是个人隐私保护还是企业数据安全,加密技术都是维护网络安全的重要手段之一。Java作为一门广泛应用于服务器端开发的语言,其内置的安全机制和强大的第三方库支持,使得Java成为构建安全系统的理想选择。本文将带你深......
  • 在JavaScript中,`==` 和 `===` 操作符有什么区别?在什么情况下应该使用它们
    在JavaScript中,==(宽松相等)和===(严格相等)操作符是进行值比较时非常基础且关键的工具。它们之间的区别主要在于处理类型转换的方式上,这种差异对于编写清晰、可预测和高效的代码至关重要。下面将详细探讨这两个操作符的区别、使用场景,以及为什么在某些情况下推荐使用===而非==。=......
  • Java基础9
    super关键字为什么需要super:举例1:子类继承父类以后,对父类的方法进行重写,那么在子类中,使用super关键字仍然可以对父类中重写的方法进行调用举例2:子类继承父类以后,发现子类和父类中定义了同名的属性,使用super关键字仍然可以在子类中区分这两个同名的属性super的理解:父类的s......