javac -d选项,它如何知道进入哪个目录?

时间:2013-07-17 14:30:45

标签: javac

您好我有以下目录结构...

enter image description here

我在终点输入:     javac -d bin src / com / elharo / math / Fraction.java

并且Fraction.class文件放在bin / com / elharo / math而不是bin /

screenshot

我只是想知道为什么编译器将文件放在那里。是否有源和bin的要点,以便在编译源文件时它进入并行/镜像bin目录?

2 个答案:

答案 0 :(得分:0)

输出路径将根据必须在java源文件中定义的公共类的包和类名计算(必须顺便将文件名与“.java”匹配)。它将相对于-d选项中的目录,或相对于当前目录。

答案 1 :(得分:0)

这是预期的。 /com/elharo/math是该类所在的包。如果您将该类从该目录中取出,只需将其放入bin中即可获得noclassdeferror。