gpt4 book ai didi

eclipse - Eclipse Indigo 中的 Tomcat 7 : javax. naming.NameNotFoundException: Resource/WEB-INF/classes not found

转载 作者:行者123 更新时间:2023-11-28 21:48:43 25 4
gpt4 key购买 nike

我正在尝试在 Eclipse Indigo 中配置 Tomcat 7,我从 http://www.eclipsetotale.com/tomcatPlugin.html#A3 添加了 Tomcat 插件到 eclipse\plugins 文件夹。现在,当我启动 tomcat 时,出现以下错误:

    Feb 13, 2012 4:23:35 PM org.apache.catalina.startup.ContextConfig webConfig
SEVERE: Unable to determine URL for WEB-INF/classes
javax.naming.NameNotFoundException: Resource /WEB-INF/classes not found
at org.apache.naming.resources.BaseDirContext.listBindings(BaseDirContext.java:733)
at org.apache.naming.resources.ProxyDirContext.listBindings(ProxyDirContext.java:546)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1197)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:825)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:300)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5161)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:897)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:873)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Feb 13, 2012 4:23:35 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]

最佳答案

SEVERE: Unable to determine URL for WEB-INF/classes
javax.naming.NameNotFoundException: Resource /WEB-INF/classes not found

这实际上是 Tomcat 7.0.25 中的一个错误,并在 Tomcat 7.0.26 中修复。另见 issue 52511 .请注意,您可以继续使用您的网络应用程序!此日志纯粹是非正式的,不会阻止 Tomcat 启动和运行。这是由于 Tomcat 扫描注释类的方式发生了变化。当您的 Eclipse 项目中没有任何类时,将打印此堆栈跟踪,因此 /WEB-INF/classes 保持为空。

升级到 Tomcat 7.0.26 将隐藏此日志。您也可以完全忽略它并像往常一样继续使用 Tomcat。

根据评论,

i Installed Eclipse for Java EE, in that in the server tab i added the server , when i run the server and try to open the localhost:8080 in the browser, it did not give me the welcome page, therefore i added the plugin in the eclipse plugins, now it gives me the welcome page in browser but adding to that it gives above error in console.

它给了什么?服务器特定的 404 错误页面或浏览器特定的“连接超时”页面?如果是 404,则服务器运行完全正常,只是 URL 没有指向任何东西。请注意,Eclipse 默认情况下 部署 Tomcat 自己的主页,原因很简单,这在开发过程中根本没有用。当您配置 Eclipse 接管 Tomcat 安装而不是使用其引擎时,它只会部署 Tomcat 自己的主页:

enter image description here

需要让URL指向部署的web项目的真实URL。它默认为可在项目属性中配置的项目名称。如果项目名称是例如“Playground”,那么您需要打开 http://localhost:8080/Playground反而。如果你想把它放在域根上,那么你需要将 Web Project Settings 中的 Context root 更改为 /:

enter image description here

最后但同样重要的是,我建议删除您在没有任何必要原因的情况下安装的 Sysdeo 插件。它在任何方面都不比 Eclipse 内置插件好。

另见:

关于eclipse - Eclipse Indigo 中的 Tomcat 7 : javax. naming.NameNotFoundException: Resource/WEB-INF/classes not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9260555/

25 4 0