当我有一个与目录结构不匹配的包声明时,Eclipse会给我一个错误,例如“声明的包”package-name“与期望的包”directory-path“不匹配。这很好。但是并非我项目中的每个人都使用Eclipse。
有没有办法在构建过程中使用javac进行检查?
答案 0 :(得分:1)
Eclipse根据源文件所在的目录层次结构验证包名称。
但是,在我看来,javac
没有任何此类功能可用。你将不得不求助于你的罪魁祸首会抛出的基本错误:
/* ClassA with package statement */
package com.example;
public class ClassA {
}
现在如果你放置另一个在同一个包中使用的类,如果你不在其中编写package语句:
/* ClassB without package statement */
import com.example.ClassA;
public class ClassB {
}
您将在编译日志中收到以下错误,指出罪魁祸首类:
$ javac -d . ClassA.java
$ javac -d . ClassB.java
ClassB.java:1: package com.example does not exist
import com.example.Circle;
^
希望有所帮助!