Исключение Apache Tomcat в консоли при запуске - PullRequest
1 голос
/ 02 ноября 2011

Я использую Tomcat для запуска веб-приложения. Без каких-либо проектов, добавленных к моему серверу Tomcat v6.0 на локальном хосте, я запускаю сервер, и создается исключение. В нем говорится, что для класса sun.awt нет сопоставления. AppContext Я использую jre6 в качестве среды выполнения. Мой вариант среды JAVA_HOME настроен на папку 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)

Спасибо за ваши мысли!

Ответы [ 2 ]

2 голосов
/ 02 ноября 2011

Я почти уверен, что ваша проблема в HP QuickTest.

HP QuickTest настраивает параметры JVM, которые изменяют путь загрузки Java - неприятно.

Я не совсем уверен, как это работает,но я предполагаю, что он устанавливает переменную окружения JAVA_OPTS (которая выбирается сценариями запуска Tomcat)

3 варианта (первый определен, второй и третий основаны на моем предположении выше):

  1. Попробуйте удалить HP QuickTest
  2. Откройте bin \ catalina.bat внутри вашей установки Tomcat и попробуйте сбросить JAVA_OPTS в начале скрипта.

Примерно так:

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

3: Или попробуйте установить переменную JAVA_OPTS (в пустую строку) в диалоговом окне запуска вашего сервера Eclipse

0 голосов
/ 02 сентября 2013

Я также столкнулся с той же проблемой, но мой Apache Tomcat загружен через упаковщик Cargo Container. Таким образом, я удалил эти 2 env. переменная для устранения проблемы

JAVA_TOOL_OPTIONS         -agentlib:jvmhook
_classload_hook           jvmhook
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...