【发布时间】:2012-11-05 01:31:02
【问题描述】:
我们有一个带有 Java 文件的 Maven 项目(打包为 JAR)。最近向该项目添加了一个新的 Java 源文件。添加 Java 文件的路径与其包声明不匹配。正如预期的那样,Eclipse 在类中显示了不匹配的错误。但是,Maven 可以很好地构建项目。在生成的 JAR 文件中,.class 文件位于包声明指示的路径中。我们尝试将 Java 源文件移动到其他不正确的文件夹(即与包声明不同),但每次 Maven 都可以正常构建项目。
那么,Maven 会忽略 .java 文件所在的实际目录吗?是否只考虑包声明?
【问题讨论】:
-
请添加一些详细信息,例如您的 pom(至少它的包装,如 war、jar 等)、文件夹结构、添加新文件的路径等。
-
我在我的问题中提到过包装是 JAR。至于其他细节,对不起,但我不明白这对这个问题有什么帮助。无论如何,我只能提供示例值,因为我正在处理一些专有代码。
-
其实我只是想知道你的文件的确切位置,因为 maven 是非常特定于结构的。但无论如何,正如你所说,你的 Maven 构建工作正常,没关系。您可以做的一些事情是,检查您是否在 Eclipse 中正确配置了 maven 插件。那么不仅仅是在eclipse中添加项目,而是在eclipse中将您的项目“导入”为“Maven项目”,然后它应该与maven build同步。
-
@RaviK 不,在这种特殊情况下,导入项目将无济于事。 Eclipse 处理源文件夹,Maven 处理源文件夹几乎到最后,但将单个源文件的列表传递给编译器,这是主要区别。