我创建了一个包含一些包的.jar,并尝试将其放入
c:\jdk\jre\lib\ext
但是java命令找不到这个包。
如果我将.jar放入
c:\jre\lib\ext
一切正常!
为什么?太阳报的教程说这两个地方都很好!
我看到扩展机制只适用于VM,而不适用于编译过程,因此如果我想要使用外部包,则必须使用-cp标志进行编译
对吗?
发布于 2009-12-10 12:19:01
JRE只使用自己的lib/ext
目录。因此,您需要将jars放入您希望库使用的每个JRE的lib/ext
目录中。使用lib/ext
通常不是一个好主意。
我相信要让它与您的编译器一起工作,您需要将jars放在c:\jdk\lib\ext
中,而不是c:\jdk\jre\lib\ext
中。
发布于 2009-12-10 18:35:38
如果我从字面上理解您的两个位置(即没有输入错误);更有可能的情况是,您的JAVA_HOME没有指向JDK内的JRE (c:\ JDK \ JRE );而是指向JDK外的某个jre (c:\jre)。
正如上面发布的tackline,您实际上也需要将该库放入您想要实际使用的每个JRE中。(请尝试安装Java3D,并观察会发生什么情况)。
https://stackoverflow.com/questions/1880569
复制相似问题