Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
NoClassDefFoundError org.eclipse.m2e.wtp.WTPProjectsUtil基于Maven构建eclipse_Eclipse_Websphere_Eclipse Wtp - Fatal编程技术网

NoClassDefFoundError org.eclipse.m2e.wtp.WTPProjectsUtil基于Maven构建eclipse

NoClassDefFoundError org.eclipse.m2e.wtp.WTPProjectsUtil基于Maven构建eclipse,eclipse,websphere,eclipse-wtp,Eclipse,Websphere,Eclipse Wtp,我已经在STS3.3.0(Juno 3.8.2版本)以及m2e wtp连接器中安装了Websphere开发工具。我现在在Maven中构建时遇到了问题。在使用maven更新项目时,我遇到以下异常 java.lang.NoClassDefFoundError: org.eclipse.m2e.wtp.WTPProjectsUtil at com.ibm.etools.maven.javaee.core.configurators.Utils.isJPAProject(Utils.java:43) a

我已经在STS3.3.0(Juno 3.8.2版本)以及m2e wtp连接器中安装了Websphere开发工具。我现在在Maven中构建时遇到了问题。在使用maven更新项目时,我遇到以下异常

java.lang.NoClassDefFoundError: org.eclipse.m2e.wtp.WTPProjectsUtil
at com.ibm.etools.maven.javaee.core.configurators.Utils.isJPAProject(Utils.java:43)
at com.ibm.etools.maven.javaee.core.configurators.JPAProjectConfiguratorDelegate.configureProject(JPAProjectConfiguratorDelegate.java:46)
at com.ibm.etools.maven.javaee.core.configurators.JPAProjectConfigurator.configure(JPAProjectConfigurator.java:45)
at org.eclipse.m2e.core.project.configurator.AbstractLifecycleMapping.configure(AbstractLifecycleMapping.java:109)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager$3.call(ProjectConfigurationManager.java:472)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager$3.call(ProjectConfigurationManager.java:1)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:161)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:137)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:465)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration0(ProjectConfigurationManager.java:403)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager$2.call(ProjectConfigurationManager.java:316)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager$2.call(ProjectConfigurationManager.java:1)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:161)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:137)
at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:89)
at org.eclipse.m2e.core.internal.embedder.MavenImpl.execute(MavenImpl.java:1301)
at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:313)
at org.eclipse.m2e.core.ui.internal.UpdateMavenProjectJob.runInWorkspace(UpdateMavenProjectJob.java:77)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

但是,当我查看plugins目录时,我可以看到jar文件org.eclipse.m2e.wtp_1.0.0.20130613-0136.jar,其中包含所讨论的类。我如何确定eclipse类路径是什么,有没有办法将这个库添加到类路径中?

这个答案是临时修复/破解。


自WDT升级后,我遇到了相同的问题:

  • “Web开发工具”版本8.5.1002.v20130402_2058
  • 带有“m2e wtp”版本1.0.0.20130613-0136
根本原因:对于插件依赖项

解决方案

打开文件
eclipse\plugins\com.ibm.etools.maven.javaee.core_1.0.0.v2012205_2240.jar
编辑
META-INF\MANIFEST.MF

更改
需要捆绑
部分

org.eclipse.m2e.wtp;bundle-version="[0.16.0,1.0.0)"

或者类似于大于1.0.0.xx的值。。。并且不改变列中的字符数

使用
-clean
选项保存文件、jar并重新启动Eclipse



m2e v1.0.0和wdt 8.5.1(不是002)运行良好,但com.ibm.etools.maven.javaee.core-xx.jar不在此版本中。。。因此,唯一可持续的解决方案是WDT更新(依赖项范围升级),可能是在v8.5.1003中。

结果是我使用了错误的Juno版本,应该使用Juno 4.2。一旦它与Websphere 8.5.5插件一起安装,我只需要将m2e WTP插件更新为最新的1.x.x插件。

我花了很长时间才找到问题所在。为了解决这个问题,我卸载了maven-juno集成插件,安装了另一个maven插件(m2e-wtp),这就成功了,我回到了我的eclipse工作区,没有任何问题。希望这会有所帮助

org.eclipse.m2e.wtp;bundle-version="[0.16.0,2.0.0)"