有时候我们需要用sh或者bat启动java线程,大多数时候需要加载的jar文件很多,这时候我们都是一个一个的jar文件往启动文件中书写。说实在话俺也是这样写了一年多,相当痛苦。有时候jar文件有几十个,并且刚开始也不会命令换行,在一行上写尤其痛苦。o(︶︿︶)o 唉

  最后终于受够了这样的日子,想了办法。发现还真的可以一次性把一个文件夹中的所有jar文件加载到环境变量中。下面这个脚本就是在linux上的一个例子,实在不好意思各位,俺的工程大多跑在linux上,windows的暂时还不会写。嘿嘿。有会写的不妨留言补充下,在此也学些了!

#!/bin/sh
export JAVA_HOME=/var/lib/java
export PROJECT_HOME=/home/runner/***/WebRoot/WEB-INF
export PATH=$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=$JAVA_HOME/jre/lib:$PROJECT_HOME/classes:$CLASSPATH
# add all the jar
for loop in `ls $PROJECT_HOME/lib/*.jar`;do
export CLASSPATH=${loop}:${CLASSPATH}
done
java com.****.java....

 

详细脚本解释如下:

#!/bin/sh shell环境,这个不解释了,不懂得学习强力学习linux。
export JAVA_HOME=/var/lib/java java_home变量,export相当于window的import。
export PROJECT_HOME=/home/runner/***/WebRoot/WEB-INF 设置一个工程路径变量
export PATH=$JAVA_HOME/jre/bin:$PATH 将java home放入到系统path中,便于下面的java命令直接执行,否则要写java的全路径,比较麻烦。
export CLASSPATH=$JAVA_HOME/jre/lib:$PROJECT_HOME/classes:$CLASSPATH 设置下CLASSPATH
# add all the jar
for loop in `ls $PROJECT_HOME/lib/*.jar`;do
export CLASSPATH=${loop}:${CLASSPATH}
done
上面的这几行就是导入工程下lib目录下的所有的jar到CLASSPATH,注意大家要按照自己的工程实际路径响应调整。
java com.****.java....  这个你懂的,否则你需要学习java了,偷笑。

自己原创心得,欢迎拍砖!
 

相关文章:

  • 2021-05-25
  • 2021-10-24
  • 2022-01-03
  • 2021-10-26
  • 2022-12-23
  • 2021-12-21
  • 2022-02-09
  • 2022-12-23
猜你喜欢
  • 2021-04-08
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-07
  • 2022-12-23
  • 2021-10-06
相关资源
相似解决方案