Eclipse:“声明的包与预期的包不匹配”,但buildpath确实定义了声明的包

时间:2013-02-20 21:56:41

标签: eclipse maven buildpath

在一个名为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那里得到那些编译错误。

P.S。我已经尝试了项目>干净,但没有帮助。

3 个答案:

答案 0 :(得分:7)

将my-project / src / main / java设置为源文件夹(Project - > Properties - > Java Build Path - > Project - > Add Folder)。删除旧的源文件夹。

如有必要,重启eclipse。

简而言之,Eclipse认为您的项目始于my-project / src。因此,它希望所有包都从那里开始,从main.java开始。

答案 1 :(得分:2)

看起来该项目仍然没有maven性质......

按照以下步骤操作:

Right Click on the project folder -> Maven -> Update Project...

或者,打开command prompt,转到根项目目录,然后输入以下命令:

mvn eclipse:clean eclipse:eclipse

答案 2 :(得分:0)

  1. 我将项目文件夹复制到我的eclipse工作区之外的某个地方。
  2. 然后我从eclipse项目资源管理器和工作区中删除了该项目。
  3. 现在我创建了一个具有相同名称的新java项目,并导入了我在(1)保存的原始项目。
  4. Tah dah!没有编译错误。