Java执行jar总结 ( 血泪史 )

Posted nyatom

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java执行jar总结 ( 血泪史 )相关的知识,希望对你有一定的参考价值。

1.命令集

1)nohup

用途:不挂断地运行命令。

语法:nohup Command [ Arg … ] [ & ]

  无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。

  如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。

  如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。

退出状态:该命令返回下列出口值:   
  126 可以查找但不能调用 Command 参数指定的命令。   
  127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。   
  否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。

2)&

用途:在后台运行

一般两个一起用

nohup command &

3)java

java命令的模版:java [-options] -jar jarfile [args...]

启动命令示例:

java -Xms128m -Xmx256m -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n -jar /data/app/test.jar --spring.profiles.active=dev &

其中:

-Xms128m 设置的是JVM堆最小内存为128m

-Xmx256m 设置的是JVM堆最大内存为256m

这里有个问题是-Xmx指定的内存不包括jvm运行中使用的本地内存,所以如果有NIO等涉及到本地内存的情况时,该java进程占用的总内存会超过-Xmx设定的数值

-Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n

设置debug模式,允许tomcat远程连接服务器调试,调试端口可指定,此处为8081

/data/app/test.jar 指定需要执行的jar包的路径

--spring.profiles.active=dev 设定SpringBoot运行环境为dev环境

& 后台模式执行

2.执行

nohub java -XX:MetaspaceSize=1024m -XX:MaxMetaspaceSize=1024m -Xms5g -Xmx5g -jar video-retrieval-0.0.1-SNAPSHOT.jar > start.log 2>&1 &

  2>&1 : 把标准出错流重定向到标准输出流 (此处:将正常日志 / 错误日志 统一保存到 start.log )

以上是关于Java执行jar总结 ( 血泪史 )的主要内容,如果未能解决你的问题,请参考以下文章

参加完阿里蚂蚁金服Java中间件6轮面试题!6点血泪总结~

工作后的学习方法论(血泪总结)

Java进阶之光!2021必看-Java高级面试题总结

大厂都是 996ICU!成功拿下阿里 P6 的 offer 后,总结出大厂面试的血泪史

小伙子五一不讲武德偷袭成功拿下阿里P6的offer,总结出大厂面试的血泪史

经验总结:Java高级工程师面试题-字节跳动,成功跳槽阿里!