Tomcat异常:The ResourceConfig instance does not contain any root resource classes

本文介绍了在Eclipse中创建空Web项目并使用Tomcat启动时遇到的'ResourceConfig instance does not contain any root resource classes'错误。问题根源在于项目被部署到错误的目录wtpwebapps下,而非webapps。解决方法是将Tomcat的部署路径改为webapps。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原因:在eclipse中创建了一个空的web项目,使用tomcat启动的时候出现下面的错误

 四月 29, 2020 9:10:57 下午 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:\Java\JDK\jdk1.7.0_72\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:/Java/JDK/jre7/bin/client;D:/Java/JDK/jre7/bin;D:/Java/JDK/jre7/lib/i386;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;D:\Java\JDK\jdk1.7.0_72\bin;D:\Java\JDK\jdk1.7.0_72\jre\bin;D:\Java\MySQL\bin;D:\Java\MySQL\MySQL Server 5.5\bin;D:\Java\GitHub\Git\Git\cmd;D:\Java\GitHub\Node\;D:\Java\Maven\apache-maven-3.6.3\bin;C:\Users\78158\AppData\Local\Microsoft\WindowsApps;D:\SoftWare\Bandizip\;D:\Java\Microsoft VS Code\bin;C:\Users\78158\AppData\Local\Microsoft\WindowsApps;C:\Users\78158\AppData\Local\BypassRuntm;C:\Users\78158\AppData\Roaming\npm;D:\Java\IntelliJ IDEA 2019.3.1\bin;D:\Java\eclipse;;.
四月 29, 2020 9:10:58 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["http-bio-8080"]
四月 29, 2020 9:10:58 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["ajp-bio-8009"]
四月 29, 2020 9:10:58 下午 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 1118 ms
四月 29, 2020 9:10:58 下午 org.apache.catalina.core.StandardService startInternal
信息: Starting service Catalina
四月 29, 2020 9:10:58 下午 org.apache.catalina.core.StandardEngine startInternal
信息: Starting Servlet Engine: Apache Tomcat/7.0.42
四月 29, 2020 9:10:58 下午 org.apache.catalina.startup.HostConfig deployDescriptor
信息: Deploying configuration descriptor D:\Java\apache-tomcat-7.0.42\conf\Catalina\localhost\springmvccannocation.xml
四月 29, 2020 9:10:58 下午 org.apache.catalina.startup.SetContextPropertiesRule begin
警告: [SetContextPropertiesRule]{Context} Setting property 'source' to 'org.eclipse.jst.jee.server:springmvccannocation' did not find a matching property.
四月 29, 2020 9:11:00 下午 org.apache.catalina.core.ApplicationContext log
信息: No Spring WebApplicationInitializer types detected on classpath
四月 29, 2020 9:11:00 下午 org.apache.catalina.util.SessionIdGenerator createSecureRandom
信息: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [358] milliseconds.
四月 29, 2020 9:11:00 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\Java\apache-tomcat-7.0.42\webapps\ajaxdemo
四月 29, 2020 9:11:01 下午 com.sun.jersey.api.core.WebAppResourceConfig init
信息: Scanning for root resource and provider classes in the Web app resource paths:
  /WEB-INF/lib
  /WEB-INF/classes
四月 29, 2020 9:11:01 下午 com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
信息: Initiating Jersey application, version 'Jersey: 1.4 09/11/2010 10:30 PM'
四月 29, 2020 9:11:02 下午 com.sun.jersey.server.impl.application.RootResourceUriRules <init>
严重: The ResourceConfig instance does not contain any root resource classes.
四月 29, 2020 9:11:02 下午 org.apache.catalina.core.ApplicationContext log
严重: StandardWrapper.Throwable
com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
	at com.sun.jersey.server.impl.application.RootResourceUriRules.<init>(RootResourceUriRules.java:103)
	at com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1182)
	at com.sun.jersey.server.impl.application.WebApplicationImpl.access$600(WebApplicationImpl.java:161)
	at com.sun.jersey.server.impl.application.WebApplicationImpl$12.f(WebApplicationImpl.java:698)
	at com.sun.jersey.server.impl.application.WebApplicationImpl$12.f(WebApplicationImpl.java:695)
	at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:197)
	at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:695)
	at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:690)
	at com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:438)
	at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.initiate(ServletContainer.java:287)
	at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:587)
	at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:213)
	at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:342)
	at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:516)
	at javax.servlet.GenericServlet.init(GenericServlet.java:160)
	at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5176)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5460)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1113)
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1671)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)

四月 29, 2020 9:11:02 下午 org.apache.catalina.core.StandardContext loadOnStartup
严重: Servlet /ajaxdemo threw load() exception
com.sun.jersey.api.container.ContainerException: The ResourceConfig instance does not contain any root resource classes.
	at com.sun.jersey.server.impl.application.RootResourceUriRules.<init>(RootResourceUriRules.java:103)
	at com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:1182)
	at com.sun.jersey.server.impl.application.WebApplicationImpl.access$600(WebApplicationImpl.java:161)
	at com.sun.jersey.server.impl.application.WebApplicationImpl$12.f(WebApplicationImpl.java:698)
	at com.sun.jersey.server.impl.application.WebApplicationImpl$12.f(WebApplicationImpl.java:695)
	at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:197)
	at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:695)
	at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:690)
	at com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:438)
	at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.initiate(ServletContainer.java:287)
	at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:587)
	at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:213)
	at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:342)
	at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:516)
	at javax.servlet.GenericServlet.init(GenericServlet.java:160)
	at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5176)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5460)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1113)
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1671)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)

四月 29, 2020 9:11:02 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\Java\apache-tomcat-7.0.42\webapps\day23_1
四月 29, 2020 9:11:02 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\Java\apache-tomcat-7.0.42\webapps\docs
四月 29, 2020 9:11:02 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\Java\apache-tomcat-7.0.42\webapps\examples
四月 29, 2020 9:11:02 下午 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
四月 29, 2020 9:11:02 下午 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
四月 29, 2020 9:11:02 下午 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: attributeAdded('org.apache.jasper.compiler.TldLocationsCache', 'org.apache.jasper.compiler.TldLocationsCache@5a86e1')
四月 29, 2020 9:11:02 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\Java\apache-tomcat-7.0.42\webapps\host-manager
四月 29, 2020 9:11:02 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\Java\apache-tomcat-7.0.42\webapps\manager
四月 29, 2020 9:11:02 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\Java\apache-tomcat-7.0.42\webapps\ROOT
四月 29, 2020 9:11:02 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-bio-8080"]
四月 29, 2020 9:11:02 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["ajp-bio-8009"]
四月 29, 2020 9:11:02 下午 org.apache.catalina.startup.Catalina start
信息: Server startup in 4265 ms

经过一番检查后发现

项目在eclipse中部署到tomcat时部署到了wtpwebapps文件夹下
在这里插入图片描述

解决方法
修改tomcat的path路径为webapps就可以了

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值