发布于 

java -jar 常用命令

简单启动

1、上传jar包到linux系统你想要放的位置

2、运行jar包
在linux系统中运行jar包主要有以下几种方式。

一、java -jar XXX.jar

最基本的jar包执行方式,但是当我们用ctrl+c中断或者关闭窗口时,程序也会中断执行。

二、java -jar XXX.jar &

&代表在后台运行,使用ctrl+c不会中断程序的运行,但是关闭窗口会中断程序的运行。

三、nohup java -jar XXX.jar &

使用这种方式运行的程序日志会输出到当前目录下的nohup.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。

四、nohup java -jar XXX.jar >temp.out &

temp.out的意思是将日志输出重定向到temp.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。

3、停止jar包运行
3.1、查看当前应用进程号
方式1:根据应用端口得到进程号

1
netstat -nlp | grep :9001

可能报错找不到命令

1
yum -y install net-tools #安装

方式2:根据java程序得到相应的进程号

1
ps -ef | grep java

方式3:和方式1一样

1
netstat -ntulp | grep 9001

3.2、结束此jar包的进程
kill -9 进程号

1
kill -9 23118

4、端口
netstat -ntlp //查看当前所有tcp端口
netstat -ntulp | grep 80 //查看所有80端口使用情况

5.查看日志

1
2
3
4
5
6
7
8
9
10
11
12
# 查看文件的后10行
tail -10 /etc/passwd 或 tail -n 10 /etc/passwd

# 不停地去读/var/log/messages文件最新的内容,这样有实时监视的效果,用Ctrl+c来终止!
tail -f /var/log/messages

# 显示文件 notes.log 的内容,从第 20 行至文件末尾:
tail +20 notes.log

# 显示文件 notes.log 的最后 10 个字符:
tail -c 10 notes.log

更多Linux命令参考

指定配置

Windos

1、指定端口

1
java -jar springboot.jar --server.port=8181

2、指定配置文件

1
java -jar springboot.jar --spring.profiles.active=dev

3、同时指定端口与配置文件

1
java -jar springboot.jar --server.port=8181--spring.profiles.active=dev
Linux

1、后台服务方式启动

1
nohup java -jar springboot.jar --server.port=8181 >outlog.log 2>&1 &

2、加载服务器配置文件 application-dev.yml

1
nohup java -Dserver.port=8086 -Dspring.config.additional-location=./application-dev.yml -jar ./springboot.jar> nohup.out 2>&1 &
java -jar 运行 jar 包基础参数配置

1、默认运行命令

1
java -jar XXX.jar

2、指定 jvm 运行内存大小参数

1
java -Xms256m -Xmx512m -jar xxx.jar

3、指定 port 端口

1
java -jar xxx.jar --server.port=8085

4、指定配置文件

1
java -jar xxx.jar --spring.profiles.active=pro
1
nohup java -Dspring.profiles.active=pro -jar /www/scrm/run/scrm/scrm-admin.jar >> /www/scrm/logs/scrm/server.log &

注:pro 就是 springboot 项目的配置环境,一般我们会有 dev、test、pro 等,

当我们忘记或者怕打包忘记改回来的时候可以在启动参数里面配置指定使用的配置环境。

5.看日志

1
2
3
tail -f /www/scrm/logs/scrm/server.log
tail -f /www/scrm/logs/scrm/server.log | grep -v CurrencyService
cat /www/scrm/logs/scrm/server.log

6.创建脚本文件 restart.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

#!/bin/bash

pkg='scrm-admin.jar'

echo "\n==================== 启动$pkg【开始】 ====================\n"

#rm -rf ./logs

pid=`ps -aux | grep $pkg |grep -v grep |awk '{print $2}'`

if test -z "$pid"
then
echo "原有$pkg进程没有启动"
else
echo "杀死原有$pkg进程【$pid】"
kill -9 $pid
fi



nohup java -Dspring.profiles.active=pro -jar /www/scrm/run/scrm/scrm-admin.jar >> /www/scrm/logs/scrm/server.log &

pid=`ps -aux | grep $pkg |grep -v grep |awk '{print $2}'`

echo "$pkg 已启动 【$pid】"

echo "\n==================== 启动$pkg【结束】====================\n"

#tail -n100 -f ./nohup.out


tail -f /www/scrm/logs/scrm/server.log | grep -v CurrencyService


重启可直接执行 sh /www/scrm/run/scrm/restart.sh