我在运行 Bruce Eckel 的 Thinking in Java 3 中的示例时遇到了一些问题。具体来说,当我输入
ant build
从代码根目录,按照网站上的说明,我可以编译所有示例到第 14 章(目录 c14),这是正常的,因为我没有安装构建第 14 章目标所需的几个库。但是,当我 cd 到第 3 章 (c03) 对应的目录并在 Assignment.java 文件上调用 javac 时,我得到以下信息:
jason@debian-laptop:~/code/tij3/code/c03$ javac Assignment.java
Assignment.java:5: package com.bruceeckel.simpletest does not exist
...
其中“...”指的是由于编译器无法找到包 com.bruceeckel.simpletest 包而导致的其他编译时错误。
你会注意到,我的类路径包括 TIJ3 的主代码目录:
jason@debian-laptop:~/code/tij3/code/c03$ echo $CLASSPATH
.:..:/home/jason/code/tij3/code/
所以我猜测嵌套在该目录中的目录树应该被java编译器很好地看到。毕竟,ant 跑得很好。作为记录,我的 Java 版本是 1.6.0_26:
jason@debian-laptop:~/code/tij3/code/c03$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)
对此的任何帮助将不胜感激。谢谢,