如何在java中为外部jar文件设置classpath?

时间:2012-02-15 11:21:43

标签: java

我在不使用任何IDE的情况下使用java1.6。现在我想将java Mail API用于我的目的。所以,我将Mail.jar复制到d:\externaljar文件夹中。

我也设置了classpath as set classpath=%classpath%;d:\externaljar;

我的jdk安装文件夹是:c:\programfiles\jdk1.6

但我面对package javax.mail does not exist during compilation.

请指导我解决这个问题?

3 个答案:

答案 0 :(得分:3)

jar文件本身必须位于类路径中,而不仅仅是包含它的目录。

CLASSPATH环境变量是CLASSPATH,而不是classpath。不过,我的建议是永远不要使用它。始终使用javac或java的-classpath(或-cp)选项传递类路径。

答案 1 :(得分:3)

我更喜欢全局-cp环境变量的CLASSPATH选项:

java -cp .;d:/externaljar/mail.jar my.application.App

答案 2 :(得分:3)

我建议不要设置CLASSPATH,而是使用-cp标记:

javac -cp .;d:\externaljar\mail.jar whatever/package/YourClass.java

您也可以使用通配符:

javac -cp .;d:\externaljar\* whatever/package/YourClass.java

运行是一回事,除了你提供带有main方法的类名。

java -cp .;d:\externaljar\* whatever.package.YourClass