Java 启动时控制台中的Apache Tomcat异常

Java 启动时控制台中的Apache Tomcat异常,java,tomcat,Java,Tomcat,我正在使用tomcat运行一个web应用程序。没有任何项目添加到本地主机上的Tomcat v6.0服务器,我启动服务器,并引发异常。它说sun.awt.AppContext类没有映射,我正在使用jre6作为我的运行时。我将JAVA_HOME environmental variation设置为jre6文件夹,并将Eclipse设置为相同的文件夹。您知道我为什么会遇到此异常以及如何解决吗 这是我的堆栈跟踪: Nov 1, 2011 5:21:36 PM org.apache.catalina.co

我正在使用tomcat运行一个web应用程序。没有任何项目添加到本地主机上的Tomcat v6.0服务器,我启动服务器,并引发异常。它说sun.awt.AppContext类没有映射,我正在使用jre6作为我的运行时。我将JAVA_HOME environmental variation设置为jre6文件夹,并将Eclipse设置为相同的文件夹。您知道我为什么会遇到此异常以及如何解决吗

这是我的堆栈跟踪:

Nov 1, 2011 5:21:36 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:\oracle\Ora11g\BIN\;C:\Program Files\Serena\Dimensions 2009 R1\CM\prog;C:\Program Files\Serena\Dimensions 2009 R1\CM\prog\Microsoft.VC80.MFC;C:\Program Files\Serena\Dimensions 2009 R1\CM\prog\Microsoft.VC80.CRT;C:\Program Files\Serena\Dimensions 2009 R1\CM\prog\Microsoft.VC80.ATL;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Common Files\OTG;C:\Program Files\Windows Imaging\;C:\Program Files\IBM\Personal Communications\;C:\Program Files\IBM\Trace Facility\;C:\Program Files\HP\QuickTest Professional\bin;c:\PROGRA~1\IBM\SQLLIB\BIN;c:\PROGRA~1\IBM\SQLLIB\FUNCTION;c:\PROGRA~1\IBM\SQLLIB\SAMPLES\REPL;C:\Program Files\Eclipse 3.7\apache-maven-3.0.3\bin; C:\Program Files\Java\jre6\bin;C:\Program Files\HP\QuickTest Professional\bin
    Letting agent QTJA do the transformation
    Letting agent QTOR do the transformation
    java.util.NoSuchElementException: No mapping for class sun.awt.AppContext
        at com.mercury.bcel.TransformerXmlFile$MappingLocator.setMapping(TransformerXmlFile.java:96)
        at com.mercury.bcel.TransformerFactory.createTransformer(TransformerFactory.java:56)
        at com.mercury.bcel.TransformerMainImpl.transform(TransformerMainImpl.java:33)
        at com.mercury.bcel.TransformerMain.transform(TransformerMain.java:35)
        at com.mercury.javashared.transform.TransformersChain.transform(TransformersChain.java:32)
        at com.mercury.javashared.transform.CommunicationThread.processTransformRequest(CommunicationThread.java:61)
        at com.mercury.javashared.transform.CommunicationThread.run(CommunicationThread.java:38)

谢谢你的想法

我很确定您的问题是HP QuickTest

HP QuickTest设置JVM选项,用于修改java引导类路径

我不确定它到底是如何工作的,但我猜它设置了一个环境变量JAVA_OPTS(由Tomcat的启动脚本获取)

3个选项(第一个是确定的,第二个和第三个是基于我上面的猜测):

  • 尝试卸载HP QuickTest
  • 打开Tomcat安装中的bin\catalina.bat,并尝试在脚本开头重置JAVA_选项 大概是这样的:

       echo "Current JAVA_OPTS (resetting to ''):"
       echo %JAVA_OPTS%
       set JAVA_OPTS=""
    

    3:或者,尝试在Eclipse服务器启动对话框中设置JAVA_OPTS变量(为空字符串)

    我也面临同样的问题,但我的Apache Tomcat是通过货物容器包装器加载的。 因此,我删除了这2个环境。变量来解决问题

    JAVA_TOOL_OPTIONS         -agentlib:jvmhook
    _classload_hook           jvmhook
    

    您好,您的操作系统是什么?您是否尝试重新安装Tomcat?一些想法:1)检查CLASSPATH环境变量并取消设置它(如果存在)。2) 检查应用程序的Xerces依赖项。3) 告诉我们更多关于tomcat/lib中的库以及您的webapp中的库(如果有的话)。@Hovanesyan,Windows XP否我没有重新安装我有tomcat的zip文件版本。另外,我认为变量路径问题更严重。@micfra我的类路径设置了一些位置,但是我的系统变量被锁定了。我的应用程序不依赖于Xerces。我在一台工作计算机上,甚至不知道我安装了HP QuickTest。我无法卸载它。我试图重置JAVA_OPTS变量,但发现我的系统变量被锁定。那么,如果我无法更改JAVA选项或类路径,并且无法卸载HP QT,还有其他选择吗?嗨,Frogger,您是否尝试了选项2(*tomcat*\bin\catalinat.bat)?您应该能够在.bat脚本(或命令提示符)中设置变量,因此请尝试编辑此脚本)。如果您无法编辑此文件,只需下载另一份Tomcat。Tomcat不需要“安装”,只需将zip发行版解压缩到您有写权限的地方,然后编辑catalina.batYeah,我试过了。我设置了变量_JAVA_OPTIONS=“”,然后重新启动了服务器,但仍然有相同的异常。另外,当我关闭catalina.bat时,变量会自动重置为锁定的_JAVA_选项。关于选项3,如何更改服务器启动对话框中的变量?转到菜单:运行>运行配置…,然后选择左侧的启动器(您可能需要在Apache Tomcat下创建一个新的启动器)。然后你会看到一个环境选项卡,在那里你可以添加环境变量…好的,我做到了。现在它说无法创建虚拟机JVM,因为我将_JAVA_选项设置为“”。