Vip*_*ley 6 java javac classpath
假设我有两个类(Bob和Tom),Bob使用Tom,但Tom不需要Bob.这两个文件都位于相同的目录结构中.
public class Bob {
public static void main(String[] args) {
System.out.println(Tom.MESSAGE);
}
}
public class Tom {
public static String MESSAGE = "Hello World";
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试以典型的方式编译Bob,我可以将其隐式编译Tom.java,因为它被识别为依赖Bob.java.这很好用.
但现在让我们说我想把Tom放在一个JAR文件中.所以我构建Tom.java并将结果放入JAR文件:libTom.jar.我现在使用指向的类路径进行编译libTom.jar.不幸的是,编译器会看到该Tom.java文件并导致它被编译而不是使用该类libTom.jar.有没有办法让编译器跳过隐式构造,Tom.java如果在类路径中找到类?
我认识到这个例子是相当人为的.请放心,围绕这个问题有一个更复杂,更少做作的用例.谢谢.
| 归档时间: |
|
| 查看次数: |
865 次 |
| 最近记录: |