m2e-wtp错误: /target/m2e-wtp/web-resources/META-INF/MANIFEST.MF(没有这样的文件或目录)

问题描述 投票:65回答:18

我使用m2e 1.2.0和m2e-wtp 0.16.0,偶尔我的Eclipse构建失败并出现错误:

<path>/target/m2e-wtp/web-resources/META-INF/MANIFEST.MF (No such file or directory)

这个问题可以通过做一个Maven->Update project...暂时解决,但错误会在一段时间后回来。不知道触发器到底是什么......

有关如何永久解决问题的任何建议?

[编辑]我发现当我直接使用Maven命令行在外部构建项目时会触发该问题。这将删除m2e-wtp生成的默认MANIFEST.MF,并且在Eclipse中进行重建之前,它显然不会重新生成。

eclipse m2e
18个回答
101
投票

早于Luna的Eclipse版本

我不确定这是否是最好的事情,但我按照提到here的说明摆脱了自动生成的web资源文件夹,这似乎也解决了缺少MANIFEST.MF的问题:

  • 仅在您的项目上:右键单击项目>属性> Maven> WTP:选中“启用项目特定设置”并取消选中“Maven Archiver在构建目录下生成文件”
  • 在整个工作区:窗口>首选项> Maven> WTP:取消选中“Maven Archiver在构建目录下生成文件”

当我们真正想要打包/构建项目时,我们实际上生成了我们的清单条目作为maven-war-plugin的一部分,但我不认为m2e-wtp使用它。无论如何,清单文件与m2e-wtp在eclipse中创建的构建中无关。

Eclipse Luna及其后

对于Eclipse Luna,你必须去:

首选项> Maven> Java EE集成并取消选中“Maven Archiver在构建目录下生成文件”。

Eclipse Luna在项目属性和WTP部分没有路径


0
投票

将manen更换为外部设备为我解决了这个问题。 窗口 - >首选项 - > [在搜索框中搜索maven] - >安装添加完整的外部maven安装并选中其复选框。申请并重启。


0
投票

清理项目没有做到这一点,有两个外部jar被添加到构建路径中删除它们并将它们移动到pom.xml中真的解决了我的问题。


0
投票

我使用eclipse Luna并发现它无用于启用项目特定设置。最后,我在项目.settings中找到了配置文件org.eclipse.m2e.wtp.prefs并更改了配置“org.eclipse.m2e.wtp.enableM2eWtp = true”。它在maven构建项目之后工作。希望这有助于人们遇到与我相同的情况。 :d


0
投票

对于Marte Eclipse:

转到:Window> Preferences> Maven> Java EE Integration

取消选中Marven Archiver会在构建目录下生成文件。

其作品


0
投票

为确保资源得到正确刷新,当maven清理目标时,您可以设置maven构建以自动刷新项目+目标文件夹等。

Check the option to automatically refresh resources in your maven build


0
投票

在我的情况下(Eclipse Neon),我启用了Maven Archiver在build目录下生成文件


0
投票
  1. 关于pmkm
  2. 按Ctrl + a然后按Ctrl + x然后按Ctrl + s然后按Ctrl + v然后按Ctrl + s
  3. 右键单击项目。 Maven - >更新项目

这个解决了我。


-1
投票

m2e-wtp插件可能会在/ target / m2e-wtp / web-resources / META-INF文件夹中生成一个几乎为空的MANIFEST.MF,无论你在哪里放置真正的MANIFEST.MF都可以查看Virgo的管理控制台。只需浏览捆绑包的“捆绑”类别即可。您将看到正在导入和导出FOR REAL的包。

因此,您可以将MANIFEST.MF复制到/ $ VIRGO_BASE / stage / $ BUNDLE_WEBAPP / META-INF目录,并在Eclipse的Server View中点击“redeploy”。


-2
投票

在上面一行的下方,我得到一个额外的信息说“不同步”我只运行项目清理“我的项目”和宾果游戏,它对我有用..


33
投票

此解决方案适用于我右键单击项目 - >属性 - > Maven - > Java EE集成 - >检查启用项目特定设置并禁用Maven归档程序生成的文件


24
投票

尝试选择您的项目,并使用菜单清除它:

项目>清除

然后刷新你的pom.xml。这对我有用。


6
投票

尝试Eclipse - > Project - > Clean

然后右键单击您的项目 - >团队 - >共享项目 - > SVN - >选择您的svn和确定

一切都应该解决


4
投票

右键单击Your Project,转到属性,然后转到Project Facets,现在转到右侧的Runtime选项卡并选择服务器并单击apply,错误消息将消失。


3
投票

在你的pom.xml文件中检查以下内容,

<build>
<finalName>Write a file name which is Your Maven Buid Name</finalName>
</build>

2
投票

当我们尝试使用mvn clean install进行maven构建时,manifest.mf会被破坏。如果我们不想销毁manifest.mf文件,只需在命令提示符下输入命令mvn install即可。

如果我们错过了manifest.mf文件,我们可以通过取消选中生成并检查maven中的“Maven归档器生成文件在构建目录下”选项 - 如你所说的JAVA EE集成。


2
投票

清洁所有项目将解决此问题。


2
投票

右键单击项目>属性> maven>更新项目>选择最后三个选项>单击确定

完成。它对我有用

© www.soinside.com 2019 - 2024. All rights reserved.