在名为 my-project
的 maven 项目中, eclipse 一直告诉我
声明的包“com.myself”与预期的包“main.java.com.myself”不匹配
虽然我在项目的构建路径中验证了这一点,但我有一个条目:
my-project/src/main/java
Included: **/*.java
Excluded: (None)
Native library location: (None)
Ignore optional compile problems: No
那可能是什么问题呢?
解决问题的最简单方法是什么?
我怀疑eclipse设置文件有问题,因为在将项目导入工作区并将其转换为maven项目后,我不得不手动更改文件夹结构以获取maven web项目的常规文件夹结构。但可能是在这些变化中,eclipse 没有正确理解某些东西。
此外,maven 能够构建我的项目(从 eclipse 中以及从命令行)。
我只是从 eclipse 中得到那些编译错误。
附言我已经尝试过项目 > 干净,但它没有帮助。
最佳答案
将 my-project/src/main/java 设置为源文件夹(项目 -> 属性 -> Java 构建路径 -> 项目 -> 添加文件夹)。删除旧的源文件夹。
如有必要,重新启动 eclipse。
简单地说,Eclipse 认为您的项目从 my-project/src 开始。因此,它希望所有包都从那里下降,从 main.java 开始。
关于Eclipse: "declared package does not match the expected package",但 buildpath 确实定义了声明的包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14990697/