eclipse 未配置服务器实例。找不到类:VersionLoggerListener
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/27313848/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Server instance is not configured. Class Not Found: VersionLoggerListener
提问by Pureferret
I'm trying to set up tomcat 7.0.57 to run a web application, in Eclipse Luna. I've added the webapp to the server, and tried to publish the serve but I get this error:
我正在尝试设置 tomcat 7.0.57 以在 Eclipse Luna 中运行 Web 应用程序。我已将 webapp 添加到服务器,并尝试发布服务,但出现此错误:
Dec 05, 2014 10:07:13 AM org.apache.tomcat.util.digester.Digester startElement
SEVERE: Begin event threw exception
java.lang.ClassNotFoundException: org.apache.catalina.startup.VersionLoggerListener
at java.net.URLClassLoader.run(URLClassLoader.java:372)
at java.net.URLClassLoader.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.apache.tomcat.util.digester.ObjectCreateRule.begin(ObjectCreateRule.java:144)
at org.apache.tomcat.util.digester.Digester.startElement(Digester.java:1276)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:182)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1343)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2786)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)
at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537)
at org.apache.catalina.startup.Catalina.load(Catalina.java:617)
at org.apache.catalina.startup.Catalina.load(Catalina.java:665)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)
Dec 05, 2014 10:07:13 AM org.apache.catalina.startup.Catalina load
WARNING: Catalina.start using conf/server.xml: Error at (21, 76) : org.apache.catalina.startup.VersionLoggerListener
Dec 05, 2014 10:07:13 AM org.apache.tomcat.util.digester.Digester startElement
SEVERE: Begin event threw exception
java.lang.ClassNotFoundException: org.apache.catalina.startup.VersionLoggerListener
at java.net.URLClassLoader.run(URLClassLoader.java:372)
at java.net.URLClassLoader.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.apache.tomcat.util.digester.ObjectCreateRule.begin(ObjectCreateRule.java:144)
at org.apache.tomcat.util.digester.Digester.startElement(Digester.java:1276)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:182)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1343)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2786)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)
at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537)
at org.apache.catalina.startup.Catalina.load(Catalina.java:617)
at org.apache.catalina.startup.Catalina.start(Catalina.java:679)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:456)
Dec 05, 2014 10:07:13 AM org.apache.catalina.startup.Catalina load
WARNING: Catalina.start using conf/server.xml: Error at (21, 76) : org.apache.catalina.startup.VersionLoggerListener
Dec 05, 2014 10:07:13 AM org.apache.catalina.startup.Catalina start
SEVERE: Cannot start server. Server instance is not configured.
Clearly something is wrong with the VersionLoggerListener
because it can't find it. All my server.xml (accessed via my workspace folder) contains on line 21 is this:
显然有问题,VersionLoggerListener
因为它找不到它。我所有的 server.xml(通过我的工作区文件夹访问)包含在第 21 行是这样的:
<Listener className="org.apache.catalina.startup.VersionLoggerListener"/>
Which seems pretty innocent. Googling doesn't seem to tell me this is missing in other peoples tomcat packages.
这看起来很无辜。谷歌搜索似乎没有告诉我这在其他人的 tomcat 包中是缺失的。
Checking my 'installation' of tomcat, it looks like this line is missing from the equivalent server.xml
检查我的 tomcat 的“安装”,看起来等效的 server.xml 中缺少这一行
Should they be the same? Which should I point to Workspace version, or installation version?
他们应该是一样的吗?我应该指向 Workspace 版本还是安装版本?
I don't know what's up though, hereit implied that their equivalent ThreadLocalLeakPreventionListener
was recently added and it's some kind of version conflict, which I don't think is the case here (?) as both are version 7 of tomcat.
我不知道发生了什么,在这里它暗示ThreadLocalLeakPreventionListener
最近添加了它们的等效项并且这是某种版本冲突,我认为这里不是这种情况(?),因为两者都是 tomcat 的第 7 版。
Hereit looks like a jar is missing, but I don't know how that would happen as I'm sure VersionLoggerListener
is a core class to catalina and should be there as part of the installation.
这里看起来缺少一个 jar,但我不知道这会如何发生,因为我确定它VersionLoggerListener
是 catalina 的核心类并且应该作为安装的一部分出现在那里。
So what is it?
那是什么?
采纳答案by Pureferret
I had two different version of Tomcat going. I deleted the server (using the server view) and then re-added it pointing to the installation.
我有两个不同版本的Tomcat。我删除了服务器(使用服务器视图),然后重新添加它指向安装。
回答by Ravi Parekh
I faced the same issue while switching Tomcat7 to Tomcat6.
我在将 Tomcat7 切换到 Tomcat6 时遇到了同样的问题。
Because the conf folder under CATALINA_BASE
folder, you were using was from different tomcat version from current version.
因为CATALINA_BASE
您使用的文件夹下的 conf 文件夹来自与当前版本不同的 tomcat 版本。
In Tomcat 7, you will find VersionLoggerListener
in server.xml
在Tomcat中7,你会发现VersionLoggerListener
在server.xml
To start tomcat, just change the folder pointing to new location of CATALINA_BASE
with conf
folder OR DELETE the conf
folder and replace it with your current tomcat conf.
要启动 tomcat,只需更改指向CATALINA_BASE
withconf
文件夹的新位置的文件夹或删除该conf
文件夹并将其替换为您当前的 tomcat conf。
For Eclipse, server Folder:.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf
对于 Eclipse,服务器文件夹:.metadata\.plugins\org.eclipse.wst.server.core\tmp0\conf
回答by user881703
I was using Tomcat 7, and then I installed Tomcat 6 in a different folder and I tried runing both Tomcat versions in separate workstations in eclipse.
我使用的是 Tomcat 7,然后我将 Tomcat 6 安装在不同的文件夹中,并尝试在 eclipse 的不同工作站中运行两个 Tomcat 版本。
Somehow Tomcat 7 did not state the same error in eclipse console.
不知何故,Tomcat 7 并没有在 Eclipse 控制台中说明相同的错误。
I deleted Tomcat 7 from Eclipse and reset the Tomcat 7 server.
我从 Eclipse 中删除了 Tomcat 7 并重置了 Tomcat 7 服务器。
This workaround resolved the issue.
此解决方法解决了该问题。
回答by kaya
This error also happens if you copy some files between tomcat installations.
如果您在 tomcat 安装之间复制某些文件,也会发生此错误。
For example if files from the /lib folder of 7.0.57 are copied to 7.0.99, take care to reinstall the libraries according to the tomcat version.
比如7.0.57的/lib文件夹下的文件复制到7.0.99,注意根据tomcat版本重新安装库。