目录
对于Java开发者来说,将本地开发好的项目部署到Linux服务器是必备技能。今天就以最常用的Jar包部署方式为例,从IDEA打包到Linux服务器常驻运行进行讲解~
一、在IDEA中将Java项目打包为Jar包
这里可以直接使用idea的maven面板,依次点击"Lifecycle > clean",右键选择"Run Maven Build",先清理项目的旧编译文件;

清理完成后,再展开"Lifecycle > package",右键选择"Run Maven Build",开始执行打包操作;打包成功后,IDEA控制台会输出"BUILD SUCCESS"的提示,同时可在项目的"target"目录下找到生成的Jar包( Jar包名称通常为"项目名-版本号.jar",如demo-0.0.1-SNAPSHOT.jar)。
java -jar demo-0.0.1-SNAPSHOT.jar
二、将Jar包上传到Linux服务器
这一步我常使用mobaxterm传文件,很方便,直接把jar包拖到你的目标文件夹即可。

三、测试运行Jar包
bash
java -jar demo-0.0.1-SNAPSHOT.jar
这里需要将"demo-0.0.1-SNAPSHOT.jar"替换为你实际的Jar包名称。运行之后,看看项目是否启动成功。

看起来成功启动啦~ 不过,通过"java -jar"命令启动的项目,当终端关闭或断开SSH连接时,项目会随之停止。为了让项目在服务器后台持续运行,需要使用nohup命令
四、使用nohup实现项目常驻运行
bash
nohup java -jar demo-0.0.1-SNAPSHOT.jar
命令说明:
-
nohup:确保命令在终端退出后仍能继续运行;
-
&:将命令放入后台运行,终端可继续执行其他操作。
执行命令后,终端会提示"nohup: ignoring input and appending output to 'nohup.out'",表示项目已在后台启动,运行日志会默认输出到当前目录的nohup.out文件中。

四、使用netstat查询项目运行状态
项目启动后,可通过netstat命令查询项目占用的端口状态,确认项目是否正常监听端口,这是验证项目能否对外提供服务的重要一步。
bash
apt-get install net-tools -y
运行此命令安装netstat工具,然后执行以下命令检查所有监听的端口及对应的进程信息,重点关注Java项目的端口:
bash
netstat -luntp | grep java

可以看到,服务正常在后台启动~
至此,在linux部署java项目成功完成,欢迎各位交流分享自己的经验