新版 Java 的类路径问题,-Djava.ext.dirs 的替代方法

原创
2020/12/01 16:19
阅读数 7K

所以说,这写程序啊,一个月不写就手生。

在运行 Java 程序时经常要指定一个包含各种 jar 包的目录作为类路径,以前我们习惯用 -Djava.ext.dirs=... 来指定这个 jar 目录。

但在新版的 JDK 中,好像是从 JDK 9 开始,当你还用这个参数的时候就会提示你:

C:\Users\Winter Lau>java -Djava.ext.dirs=lib
-Djava.ext.dirs=lib is not supported.  Use -classpath instead.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

好吧,让你用 -classpath 或者 -cp 来替代,这倒省事了。

然后我就试试 

java -cp lib xxx.xxxx
java -cp lib\*.jar xxx.xxx

结果虽然不报错了,但类路径的设置并不起作用。

琢磨半天,居然要这么玩:

java -cp lib\* xxx.xxxx

注意哦,是 lib\* 而不是 lib\*.jar 也不是 lib 。Linux 换成正斜杠即可。

擦!

展开阅读全文
打赏
2
1 收藏
分享
加载中
红薯一大把年纪了,竟然还在写代码?
01/05 13:58
回复
举报
看起来,cp还是那个cp,只不过支持通配符了
2020/12/02 09:30
回复
举报
一杯茶,一包烟
一行代码敲一天
2020/12/01 16:56
回复
举报
OSC不是用Java6嘛
2020/12/01 16:44
回复
举报
@红薯 开始写技术博客了,说明工作量不饱和,对不?
2020/12/01 16:36
回复
举报
更多评论
打赏
5 评论
1 收藏
2
分享
返回顶部
顶部