shell 调用java 带参数_linux shell执行java代码带参数

1、先写好main方法做测试

fd00348f83be8d5e9a27e1efc3731b5c.png

/**

* @apiNote 入口

* @author hcj

*/

public class Main {

public static void main(String[] args) {

System.out.println("开始:"+DateUtile.nowDate());

for (int i = 0; i < args.length; i++) {

System.out.println("入参:"+args[i]);

}

System.out.println("结束:"+DateUtile.nowDate());

}

}

2、idea 配置jar包导出路径

e6cd4bea0aafd77b94d1059cd92ef326.png

8a6c897df57149db7a9ee5869ff87447.png

20bb9470e95c861a045c3f2f20b671f5.png

28c7c011cb0f25b981413fcc7c389811.png

e304ffb7abb2f03afec44f66d0b07505.png

661fd9bd31b5fbc68d47b94c2e96d617.png

3、上传到linux服务器,编写测试shell脚本

#!/bin/sh

echo ""

echo "----------------------------------"

echo "start at `date '+%Y-%m-%d %H:%M:%S'` ..."

#由于本机没设置java_home的环境变量 先申明下

JAVA_HOME=/was/hcj/jdk1.8.0_11

CLASSPATH=.:${JAVA_HOME}/lib:${JAVA_HOME}/lib/tools.jar

#CLASSPATH后面加上自己导出的jar包路径

CLASSPATH=${CLASSPATH}:/was/hcj/javaxiaochengxu.jar

#main方法所在的类路径

MAIN_CLASS=Main

echo $CLASSPATH

#执行 后面是带的参数

${JAVA_HOME}/bin/java -classpath ${CLASSPATH} ${MAIN_CLASS} 1 2 3 4 5 6 7 8

echo "finished at `date '+%Y-%m-%d %H:%M:%S'` ..."

注意: 给脚本加上执行权限    chmod 755 test.sh

执行脚本 ./test.sh

入参也可以在执行shell脚本的时候带上,比如

./test.sh 1 2 3 4 5

在shell脚本里$1 $2 $3 $4 $5 接收就是

0f0bc95e4f02296219533c5d82f9fb9c.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值