很抱歉提出一个相当常见的问题,但我找不到合适的答案。 我只想用javac编译几个这样组织的源文件:
例如,如果我运行
javac FullBinaryTree/Node.java
它可以正常生成类文件。
但如果我跑
javac FullBinaryTree/Tree.java
它将失败,报告每个节点外观带有未知符号错误。
正如你所看到的那样,2个文件在同一个包中,所以我没有使用任何导入,他们共享相同的第一行,即
package AdaptiveHuffmanCoding.FullBinaryTree;
我想我必须告诉编译器在哪里找到这个节点,但我实际上正在努力解决它。如果有人可以解释。
谢谢
答案 0 :(得分:1)
正如您所看到的那样,2个文件位于同一个包中......
要使编译器可以访问相同包的类,不要直接从此包执行javac
,而是从上部控制杆执行。
编译Tree
类:
javac AdaptiveHuffmanCoding/FullBinaryTree/Tree.java
编译此包的所有类:
javac AdaptiveHuffmanCoding/FullBinaryTree/*.java
请注意,要符合Java命名约定:包不应包含任何大写字符。