2012-01-07 140 views
0

如果我们有一个如下结构,包括文件夹入jar文件

根(文件夹) - > - > jarss(文件夹) - >玉米(包) - > MyClass.class

和MyJar.jar(包括jarss/com.MyClass.class)位于内侧(文件夹)

如何给com.myclass的路径?

例如。 javac -cp root/MyJar.jar AnOtherClass.java

(这是行不通的,因为在MyJar.jar文件第一,然后MyClass.class罐子里面的文件夹)

+0

Java的默认类加载器不支持Jar-in-Jar。 – 2012-01-07 07:07:34

回答

2

你为什么要把*的.java文件罐?还有一件事是Java在jar中不支持jar。

如果你想这样做,假设你有一个jar文件,其中org.test.test1.Myclass.java。 这意味着jar文件有一个文件夹org,其中会有一个文件夹测试然后test1文件夹,test1文件夹将有你的类MyClass.java。

只需设置Jar文件的路径在CLASSPATH一样,

设置CLASSPATH =。/ lib目录/ MyJAR.jar

然后运行它,

javac的-classpath% CLASSPATH%org.test.test1.Myclass.java

(又找了语法和javac的属性。)

我希望这可能会让你对你遇到的问题有所暗示。

+0

我不把* .java文件放入jar中我问如何在jar文件中的文件夹内使用* .class文件。 – user460293 2012-01-07 07:12:40

+0

@ user460293: - 只需在classpath中设置jar文件并提供-classpath切换并使用它。但如果罐子里有另一个罐子。那么它将不被Java支持 – 2012-01-07 07:24:25