【发布时间】:2011-08-29 07:18:39
【问题描述】:
我无法让 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 也不起作用。
【问题讨论】:
-
您正在导入 acm.program... 您说的是一个包...不是一个类。要从 acm.program 包中导入一个类,您必须执行 'import acm.program.CLASS',以导入单个类,或者您必须使用 'import 导入包中的所有类acm.program.* ;'
标签: java compiler-construction