Java中启动jar包命令详解

1、windows环境

在cmd命令窗口,执行java -jar ***.jar即可启动java程序。按下ctrl+c或直接关闭cmd命令窗口,当前程序都会退出。
windows环境下javaw启动命令代表后台运行,关闭cmd命令窗口仍然运行,在任务管理器可以看到相关服务,如

javaw -jar ***.jar

2、linux环境

java程序启动命令,执行java -jar ***.jar即可启动java程序。按下ctrl+c或直接关闭终端,当前程序都会退出。
在命令的结尾添加“&”,“&”表示该程序可以在后台执行,如

java -jar ***.jar &

但是当窗口关闭时,程序也会中止运行,在命令的最前面加上nohup,这样当终端关闭时,程序就会不挂断运行,如

nohup java -jar ***.jar &

当前程序的打印日志会被写入到当前目录的nohup.out文件中,可以修改写入指定的文件中,如

nohup java -jar ***.jar > log.out &

当前程序的打印日志就会被写入当前目录下log.out文件中,当不想写入日志,可以将日志重定向到/dev/null中,/dev/null代表linux的空设备文件,所有往这个文件里面写入的内容都会丢失,如

nohup java -jar ***.jar > /dev/null &

当只输出错误信息到日志,标准输出不写入日志,直接丢弃,如

nohup java -jar ***.jar > /dev/null 2>error.log &

当标准输出重定向到/dev/null中,然后错误信息输出重定向到标准输出,则错误信息也被定向到了/dev/null中,错误输出同样也被丢弃,如

nohup java -jar ***.jar > /dev/null 2>&1 &

当标准输出重定向到log.out中,然后错误信息输出重定向到标准输出,则错误信息也被定向到了log.out中,如

nohup java -jar ***.jar > log.out 2>&1 &

当需要停止java程序时,通过如下命令找到PID,并根据PID终止进程,如下

ps -ef | grep ***.jar
kill -15 PID

3、重定向

在linux中重定向相当的方便,只需要用>或>>符合就可以了,其含义如下

> 是覆盖写入,原来的内容全部清空。
>> 是追加写入,在原来内容末尾追加。
  • 标准输入文件(stdin):stdin 的文件描述符为 0,Unix 程序默认从 stdin 读取数据。
  • 标准输出文件(stdout):stdout 的文件描述符为 1,Unix 程序默认向 stdout 输出数据。
  • 标准错误文件(stderr):stderr 的文件描述符为 2,Unix 程序会向 stderr 流中写入错误信息。

这样就知道输出/错误输出信息分别用数字 1 和 2 代表,反过来看上面的写法就指定重定向的原理了。

java -jar app.jar >log 2>&1 &

这里的, 2>&1 代表把错误输出 2 合并到 1 中,并重定向到名为 log 的文件中去。符号 >& 是一个整体,不可分开,分开后就不是上述含义了。
2>&1 符号必须放到 >log 后面,为什么呢?我们不妨把 1 和 2 都理解是一个指针, 然后来看上面的语句就是这样的:本来 1----->屏幕 (1 指向屏幕),执行>log 后, 1----->log (1 指向 log),执行 2>&1 后, 2----->1 (2 指向 1,而 1 指向 log, 因此 2 也指向了 log)。

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Linux上启动JavaJAR包,可以使用以下命令: java -jar <JAR文件名> 其,<JAR文件名>是要启动JAR包的文件名。例如,如果要启动一个名为myapp.jarJAR包,可以使用以下命令: java -jar myapp.jar 这将启动Java虚拟机,并执行JAR包的主类。如果JAR包没有指定主类,则会出现错误。 ### 回答2: 在Linux系统启动Javajar包,需要使用命令行方式进行操作。下面是相关的步骤和命令: 1. 首先需要确认Java环境已经安装并配置好。 检查Java版本:`java -version`,如果已安装且配置正确,会输出Java版本信息。 2. 编写java程序并将其打包成jar包。 3. 在Linux系统打开终端,进入到jar包所在目录。 4. 使用以下命令启动jar包: `java -jar Jar包名称.jar` 例如,假设要启动jar包名为`MyApp.jar`,那么命令应为: `java -jar MyApp.jar` 此外,还可以在命令指定一些参数,例如设置最大的堆内存大小为512M: `java -Xmx512m -jar MyApp.jar` 这样就可以在Linux系统成功启动Javajar包了。另外,也可以通过编写脚本等方式,将启动命令加入到自动化脚本,以实现自动化启动和部署等功能。 ### 回答3: 在Linux系统启动Javajar包,通常需要使用java命令,具体命令格式如下: java [options] -jar filename.jar [arguments] 其,options是一些可选的参数,常用的包括: -cp或-classpath:指定类路径,即指定Java类文件所在的目录或JAR包; -Xmx:设置JVM的最大堆内存; -Xms:设置JVM的初始堆内存; -D:指定系统属性变量值。 filename.jar是需要启动Java程序的JAR包文件名,arguments则是传递给程序的参数。 下面是一个具体的例子: 假设当前用户的工作目录下有一个名为myapp.jarJAR包,可以通过如下命令启动java -jar myapp.jar 如果需要指定类路径,可以使用-cp或-classpath参数,例如: java -cp /usr/local/mylib/*:/usr/local/myapp -jar myapp.jar 上述命令指定了两个类路径,一个是/usr/local/mylib目录下的所有JAR包,另一个是/usr/local/myapp目录下的类文件。注意,在这里用了通配符*,表示匹配所有JAR包。 如果需要传递参数,可以在命令末尾追加参数列表,例如: java -jar myapp.jar arg1 arg2 arg3 上述命令会将参数arg1、arg2、arg3传递给myapp.jar程序。 在实际应用,需要根据项目的具体情况选择合适的参数和路径,并结合shell脚本等方式实现启动

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值