Java 使用JAR的简单类路径问题
我有一个叫做Test.class的玩具程序。它访问一个名为myjar.jar的jar中的类。该jar位于作为Windows环境一部分的类路径变量集中。当我键入echo%CLASSPATH%时,我看到C:\myclasses\myjar.jar。当我执行我的程序时 java测试 它运行良好 但是如果我将代码打包为jar并尝试运行 java-jartest.jar 它可以 它找不到我的类路径。我知道这有一个简单的解决方案 您能帮助我吗。当使用了Java 使用JAR的简单类路径问题,java,jar,classpath,Java,Jar,Classpath,我有一个叫做Test.class的玩具程序。它访问一个名为myjar.jar的jar中的类。该jar位于作为Windows环境一部分的类路径变量集中。当我键入echo%CLASSPATH%时,我看到C:\myclasses\myjar.jar。当我执行我的程序时 java测试 它运行良好 但是如果我将代码打包为jar并尝试运行 java-jartest.jar 它可以 它找不到我的类路径。我知道这有一个简单的解决方案 您能帮助我吗。当使用了-jar(或-cp或-classpath)参数时,%cl
-jar
(或-cp
或-classpath
)参数时,%classpath%
将被忽略。相反,将使用JAR的/META-INF/MANIFEST.MF
文件中的类路径
项。您希望将JAR与另一个JAR的相对路径放在其中。例如
Class-Path: myjar.jar
上面的示例期望myjar.jar
与要执行的jar文件位于同一文件夹中
另一种方法是将第三方JAR打包到JAR文件中。例如,在Eclipse中,您可以这样做
首先,我不会再为这些东西操心了(我也用过),让我的IDE(Netbeans/Eclipse)帮你弄清楚这些东西。顺便说一句,我已经希望您使用IDE,因为它使Java编程变得更加有趣 接下来,我建议您学习像maven这样的构建工具