java扩展机制

时间:2009-12-10 12:11:17

标签: java classpath

我创建了一个包含一些包的.jar,我试图把它放到

c:\jdk\jre\lib\ext

但java commnand找不到包

如果我将.jar放入

c:\jre\lib\ext

一切正常!

为什么呢? SUN的教程说这两个地方都很好!

我看到扩展机制仅适用于VM,但不适用于编译过程 如果我想使用外部包,我必须使用-cp标志

进行编译

这是对的吗?

2 个答案:

答案 0 :(得分:1)

JRE只使用自己的lib/ext目录。因此,您需要将jar放入您希望库使用的每个JRE的lib/ext目录中。使用lib/ext通常是一个坏主意。

我相信要让它与您的编译器一起使用,您需要将广告投放在c:\jdk\lib\ext,而不是c:\jdk\jre\lib\ext

答案 1 :(得分:1)

如果我要按字面意思取两个位置(即没有拼写错误);更可能的情况是你的JAVA_HOME没有指向JDK里面的JRE(c:\ jdk \ jre);而是在JDK之外的某个地方使用JRE(c:\ jre)。

如上所述,您确实需要将库放在您想要实际使用的每个JRE中。 (尝试安装Java3D并观察会发生什么)。