红联Linux门户
Linux帮助

Java -cp命令行引用多个jar包的简单写法(Windows、Linux)

发布时间:2016-12-06 09:20:13来源:linux网站作者:hongweigg
1、Windows下用法
在Windows上,可以使用
java your-jar-lib-fold/* your-main-class
your-jar-lib-fold为存放一堆jar文件的路径。
your-main-class为要运行的具有main方法的主类。
JDK 1.7及以上版本支持该写法。
 
2、Linux下用法
在Linux上,这样写似乎并不支持,统配符转换后的文件路径用空格分隔,导致JAVA虚拟机只能认到前面一个。解决办法,使用SHELL脚本拼接:
export CLASSPATH=`find $your-jar-lib-fold  -name  *.jar | xargs | sed  "s/ /:/g"`
这里$your-jar-jar-fold为包含jar的路径变量,可以用export 设置,也可以写绝对路径,执行完后,就是把一大堆jar包用":"拼接在一起了。然后使用该类路径变量:
java -cp $CLASSPATH your-main-class param1 param2...
param1,param2为其他要传入的运行参数。
 
3、通过指定Java扩展包路径变量(Windows、Linux均可使用)
在java参数中加入虚拟机参数:
java -Djava.ext.dirs=your-jar-lib-fold your-main-class
该方法对整给虚拟机都会有影响,如果Java加载的包需要相互隔离,则不适宜。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/26605.html