我无法让 javac 识别外部 .jar 文件,我正在尝试扩展其类。我在同一目录中有两个文件:TestConsole.java 和 acm.jar。我正在使用以下命令从同一目录进行编译:
javac -classpath .:acm.jar TestConsole.java
但似乎 javac 只是忽略了 acm.jar。它给了我错误:
TestConsole.java:1: package acm does not exist
import acm.program;
^
当然,acm.program是acm.jar中的一个包。 acm.jar 中的所有类都已编译;我只想在我的课程中使用它们,而不是编译它们。
我究竟做错了什么?
我在 Mac 上运行它,acm.jar 的目录结构似乎是有效的:它包含一个 acm/program
目录,其中有 ConsoleProgram.class
,唯一的类 TestConsole
扩展。
javac -classpath ".:acm.jar" TestConsole.java
也不起作用。
原文由 Rebecca Nelson 发布,翻译遵循 CC BY-SA 4.0 许可协议
检查清单:
您在 acm.jar 中的类显示为:
acm/程序/CLASSX.class
acm/程序/CLASSY.class
当用 jar tf acm.jar 倒出时
导入 acm.program.CLASSX ;
或者
导入 acm.program.* ;