如果一个java源文件依赖于一个外部JAR文件,我们需要将外部依赖的路径提供给java编译器:
javac -cp [path-to-external-JAR] foo.java
jar cvf foo.jar foo.class
同样,当我们需要执行这个jar文件时,我们需要向JVM提供外部依赖的路径:
java -cp [path-to-external-JAR]:foo.jar foo
最佳答案
编译器需要引用,因为它必须检查您正在调用或覆盖的类和方法是否存在,并且可以被调用/覆盖。
JVM 需要它们,因为它必须执行这些类和方法中的指令。
关于java - 为什么 javac(编译器)和 java(JVM)都需要在类路径中提及外部依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14788586/