如何告诉eclipse忽略:"在项目中找不到persistence.xml文件"

Fes*_*loe 31 java eclipse jpa java-ee

对于我的项目必要性我重新组合一个核心项目中的所有persistence.xml条目,我将其绑定为maven依赖项,无论我需要什么.

问题是eclipse IDE总是在抱怨

No persistence.xml  file found in project
Run Code Online (Sandbox Code Playgroud)

有没有让日食保持沉默?谢谢

Fes*_*loe 60

感谢sionnach733让我走上了正确的道路

在此输入图像描述

  • 忽视问题通常是不好的建议.看到其他答案. (5认同)

Sio*_*733 14

Window->Preferences->Java Persistence-> JPA-> Errors/warnings-> Project
Run Code Online (Sandbox Code Playgroud)

然后将其从错误更改为您喜欢的任何内容(警告/信息/忽略).如果您不希望它影响其他项目,也可以选择配置项目特定设置

  • 我同意......拿别人的答案然后用相同的信息写一个答案并自我接受你自己的答案我认为不是那么好.他也可以将截图编辑成Sionnach733的答案. (7认同)
  • 这应该被视为答案! (2认同)

Ale*_*sel 10

如果在不需要JPA方面的Maven项目上发生此错误,则可以通过在pom.xml中设置以下属性来告诉m2e不应用JPA激活(实质上,不是在项目配置期间添加JPA方面).受影响的项目:

<properties>
    <m2e.jpa.activation>false</m2e.jpa.activation>
</properties>
Run Code Online (Sandbox Code Playgroud)

如果你CTRL-SPACE在现有的<properties>标签内按下,在pom.xml源代码中,content-assist将提供一个创建属性的快捷方式,所以你不必记住语法,只是内容辅助就在那里......; )

应用该属性后,请确保Maven -> Update Project (Alt-F5)在相关项目上运行.

恕我直言接受的答案是没有好的建议,因为它是错误的,只是设定错误的严重性"忽略",从此以后Eclipse将不会对项目的提醒确实JPA项目,从而有/需要的JPA面和必然应该提供预期位置中的persistence.xml(命名和位置对于Java EE环境中部署的工件很重要).

此外,通过实际正确配置非JPA项目(即没有多余的JPA方面),Eclipse不会浪费时间在项目上运行JPA验证和JPA更改监视.您可能已经JpaProjectConfigurator在Progress视图中注意到了很多(特别是在工作区中有多个JPA项目时).当删除JPA方面时,这些不再针对不需要JPA的项目运行.


bak*_*aro 7

这个问题的所有其他答案都是通过愚弄 Eclipse而不是抱怨错误来处理问题.

该问题的正确解决方案是从项目中删除JPA Facet.您可以通过在Project Explorer中右键单击项目,从菜单中选择Properties来实现.从那里,转到"Project Facets",并确保取消选中JPA条目.单击Apply,然后单击OK.转到"项目"菜单,然后选择"清理".这将消除虚假错误.

Project Facets的屏幕截图

  • 这是行不通的。构面选择由m2e处理。每次调用“ Maven-&gt;更新项目(Alt-F5)”时,m2e(实际上不是Maven本身)都会重新添加JPA方面,因此您的答案是错误的。有趣的是,您被迫对我的作品投反对票,但实际可行。 (2认同)

Ash*_*der 5

我通过禁用Java项目的JPA方面来解决这个问题.