使用jar的简单类路径问题

时间:2010-09-17 22:00:03

标签: java jar classpath

我有一个名为Test.class的玩具程序。它访问名为myjar.jar的jar中的类。该jar是我的CLASSPATH变量集,作为我的Windows环境的一部分。当我输入echo%CLASSPATH%时,我看到C:\ myclasses \ myjar.jar。当我执行我的程序时 java Test

运行正常。

但是,如果我将代码打包为jar并尝试运行

java -jar Test.jar

它ca 它无法找到我的类路径。我知道这有一个简单的解决方案。

你能帮我吗?

2 个答案:

答案 0 :(得分:3)

当使用-jar(或-cp-classpath)参数时,%CLASSPATH%将被忽略。相反,将使用JAR的Class-Path文件中的/META-INF/MANIFEST.MF条目。您想将JAR相对路径放到其他JAR中。 E.g。

Class-Path: myjar.jar

上面的示例要求myjar.jar与您要执行的JAR文件位于同一文件夹中。

另一种方法是将第三方JAR打包到JAR文件中。在例如Eclipse中,您可以执行此操作。

alt text

答案 1 :(得分:0)

首先,我不再讨论这些东西了(我也使用过),让我的IDE(Netbeans / Eclipse)为你找出这些东西。顺便说一下,我已经希望你使用的是IDE,因为它使用Java编程更加有趣。

接下来,我建议学习像maven这样的构建工具。