暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux和windows运行jar包

棉花糖老丫 2024-08-30
121

Linux和windows运行jar包

一、Linux运行jar包命令

方式一
java -jar shareniu.jar
特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出

方式二
java -jar shareniu.jar &
&代表在后台运行。
特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。
继续改进,如何让窗口关闭时,程序仍然运行?

方式三
nohup java -jar shareniu.jar &
nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。

方式四
nohup java -jar shareniu.jar >/dev/null &
解释下 >temp.txt
command >out.file
command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。
nohup java -jar test.jar >temp.txt &

可通过jobs命令查看后台运行任务
jobs
那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。
如果想将某个作业调回前台控制,只需要 fg + 编号即可。
fg 23

查看某端口占用的线程的pid
netstat -nlp | grep :8888

二、Linux设置jar包开机自启动

首先编写一个启动jar包的脚本,位置随意,这里以/home/java为例,文件名叫startup.sh。

    export JAVA_HOME=/opt/jdk8
    export PATH=$JAVA_HOME/bin/:$PATH
    nohup java -jar home/java/test.jar > /home/java/out.log 2>1 &

    chmod 777 /home/java/out.log

    然后运行chmod命令,使其可运行。
    chmod +x /home/java/startup.sh
    接着编辑/etc/rd.local,加上一行
    /home/java/startup.sh

    系统启动后,在加载完所有组件后会以root身份执行rd.local的命令。
    给rd.local可运行权限
    chmod +x /etc/rd.local

    三、windows系统下运行bat脚本实现后台运行及停止jar文件

    1、先建两个bat文件,分别命名为start.bat,stop.bat,然后把这两个文件和要执行的jar包放到同一个目录下。
    2、运行start.bat就可以执行哪个jar文件了,并且在任务管理器中可以看到这个进程,运行stop.bat就可以停止这个进程了。

      start.bat脚本内容为:
      @echo off
      start javaw -jar xxx.jar
      exit
      stop.bat脚本内容为:
      @echo off
      taskkill -f -t -im javaw.exe
      exit

      3、修改启动进程名
      在jdk的安装路径中/jkd/bin中将javaw.exe复制一个,改名jar对应的进程名(想改啥就该啥)
      在jar同级目录下创建一个run.bar的文件,内容如下:

        @echo off
        start [修改后的javaw名称] -jar [jar的全名称]
        exit

        4、输出日志
        javaw -jar
        microservicecloud-eureka-7001-0.0.1-SNAPSHOT.jar >1.log &

        java -jar SNAPSHOT.jar --spring.profiles.active=test -Dspring.config.location=application-test.yml
        –spring.profiles.active 指定读取什么后缀的配置文件
        -Dspring.config.location 指定读取哪个配置文件
        java -jar filesys.jar --spring.profiles.active=prod > C:/fileSystem/files/1.log &

        文章转载自棉花糖老丫,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

        评论