首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法在服务器上运行来自Eclipse的webapp应用程序

无法在服务器上运行来自Eclipse的webapp应用程序
EN

Stack Overflow用户
提问于 2011-07-15 15:43:17
回答 14查看 59.9K关注 0票数 27

在Eclipse中运行我的WebApp项目时,大多数情况下它都能正确运行。但是如果错误地停止服务器,我会在“控制台”视图中杀死它,而不是在“服务器”视图中“停止”服务器。在运行clean项目时,我得到了以下信息

代码语言:javascript
复制
java.lang.NullPointerException
at org.eclipse.wst.common.componentcore.internal.util.VirtualReferenceUtilities.getDefaultProjectArchiveName(VirtualReferenceUtilities.java:81)
at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getJavaClasspathReferences(J2EEModuleVirtualComponent.java:332)
at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getNonManifestRefs(J2EEModuleVirtualComponent.java:236)
at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:160)
at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:208)
at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:201)
at org.eclipse.jst.common.internal.modulecore.SingleRootUtil.hasConsumableReferences(SingleRootUtil.java:217)
at org.eclipse.jst.common.internal.modulecore.SingleRootUtil.validateSingleRoot(SingleRootUtil.java:165)
at org.eclipse.jst.common.internal.modulecore.SingleRootUtil.isSingleRoot(SingleRootUtil.java:93)
at org.eclipse.jst.common.internal.modulecore.SingleRootExportParticipant.canOptimize(SingleRootExportParticipant.java:84)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.canOptimize(FlatVirtualComponent.java:136)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.cacheResources(FlatVirtualComponent.java:118)
at org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.fetchResources(FlatVirtualComponent.java:101)
at org.eclipse.wst.web.internal.deployables.FlatComponentDeployable.members(FlatComponentDeployable.java:147)
at org.eclipse.wst.server.core.internal.ModulePublishInfo.hasDelta(ModulePublishInfo.java:418)
at org.eclipse.wst.server.core.internal.ServerPublishInfo.hasDelta(ServerPublishInfo.java:443)
at org.eclipse.wst.server.core.internal.Server.hasPublishedResourceDelta(Server.java:1539)
at org.eclipse.wst.server.core.internal.Server$ResourceChangeJob$1.visit(Server.java:214)
at org.eclipse.wst.server.core.internal.Server.visitModule(Server.java:2929)
at org.eclipse.wst.server.core.internal.Server.visit(Server.java:2913)
at org.eclipse.wst.server.core.internal.Server$ResourceChangeJob.run(Server.java:225)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

在发射的时候,我得到了这个

代码语言:javascript
复制
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Document base D:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Webapp does not exist or is not a readable directory
    at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:142)
    at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4319)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4488)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)

请帮我从这个问题中恢复过来。

EN

回答 14

Stack Overflow用户

回答已采纳

发布于 2011-07-21 14:29:35

我已经停止使用这种方法来运行我的webapp应用程序。我改用mvn tomcat:run。容易多了。虽然我不知道如何调试。

票数 0
EN

Stack Overflow用户

发布于 2012-09-06 11:12:30

我花了一段时间让它工作,但多亏了"Alexander Pogrebnyak“(参见deploying a war file in WTP(Eclipse) tomcat server),我能够通过m2e使Eclipse Web项目与Maven一起工作:

在开始之前,我必须说我是一个非常多疑的人,所以我总是从使用"Eclipse > Project > Clean...“清理我的所有项目开始。菜单(未选中“立即开始构建”选项)。我也没有选中"Eclipse > Project > Build Automatically“选项。

顺便说一句,我想你已经安装了你的m2e插件,否则我要说的没有任何意义……

好吧,让我们开始吧:

优先,再见服务器配置:

1)如果您在以前的服务器配置中有任何项目,请将其删除(右键单击服务器并选择“添加和删除”选项)

2)清理您的服务器工作目录(右键单击服务器并选择"Tomcat server工作目录“)

3)清理编译后的“剩菜”(在服务器上右击并选择“清理”)

4)从"Servers“标签中删除您的服务器配置

5)完全删除"Servers“项目/文件夹(显示在"Project Explorer”选项卡中)

6)奖励:我还删除了服务器运行时环境("Eclipse > Window > Preferences > server > runtime environment“)

第二,"Maven “(如果你的web项目有"Maven性质”):

1)右键单击您的web项目

2)“弹出菜单>运行方式> Maven清理”

这应该会清除你的目标文件夹

第三,安装m2e 集成(耶!它不是“默认”的。一整天的时间来解决这个问题):

1)打开Maven "Discovery“选项(Eclipse > Windows > Preferences > Maven > Discovery)

2)按“打开目录”按钮(应出现"m2e市场“窗口)

3)向下滚动直到找到"WTP集成“选项,然后”勾选“它!

4)按"Finish“

5)将会出现一个类似的插件屏幕。“下一步”,“下一步”,“同意”,等等...

第四,离开,然后再次运行它:

1)如果没有被要求重启Eclipse (我很难相信您不会这样做),那就自己重启它!

Fifth,maven重新整合:

1)将Maven性质添加到项目中(右键单击您的web项目,“弹出菜单>配置>转换为Maven项目”)

2)更新你的maven配置(是的,是的,可疑,我知道)。再次右键单击您的web项目,现在其图标上有一个"M“("Pop - up Menu > Maven > Update Project")

3)运行maven安装(右键单击您的web项目,“弹出菜单>运行方式> Maven安装”)

4)构建你的项目("Eclipse > project > Build All")

第六,让它发挥作用:

1)部署并运行你的web应用程序(右击你的web项目,“弹出菜单>运行方式>在服务器上运行”)

2)系统将要求您创建另一个服务器配置。它将再次创建"Servers“项目/文件夹,但这就是它的方式。

就是这样!我必须承认,一旦我运行了服务器,它就不能工作了,但是这次(我不知道为什么) "Log4J“库找不到了。在一次“项目清理”+ "maven清理“和一次"maven install”+ "project build“之后,另一条消息指出找不到我的Servlet类。再一次,我执行了“项目清理”+ "maven清理“和"maven install”+ "project build“和”瞧“!它起作用了(这就是为什么我如此怀疑)。

我开始担心这个新的Juno + m2e替身了.在使用Indigo或Ganymede时从来没有遇到过这样的问题。但是我想我可以再次信任Eclipse (不是吗?)

票数 39
EN

Stack Overflow用户

发布于 2013-01-21 11:48:53

不要做那些疯狂的宇宙变通方法!!

这可以很好地工作:

将以下行添加到".project“文件(隐藏):

代码语言:javascript
复制
 <natures>
    <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
    <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
    <nature>org.eclipse.jdt.core.javanature</nature>
    <nature>org.eclipse.m2e.core.maven2Nature</nature>
    <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
    <nature>org.eclipse.wst.jsdt.core.jsNature</nature>
  </natures>

享受吧!

为什么?如果检查不存在目录,那么"../.metadata/blah/blah/tmp0/wtpwebapps/YOURPROJECT/"是空的:那么您的构建并没有创建WAR...!!!因为maven plugin不理解他必须这样做!

我在比较来自不同部署/非部署项目的两个.project文件后发现了这一点……

希望有帮助!

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6703988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档