Eclipse 内で Tomcat 7 を使用してデバッグする Maven プロジェクトがあります。問題は、pom.xml ファイルに最小限の変更 (Maven プラグインのバージョンの変更や構成プロパティの追加など) を加えると、サーバーが適切に起動しなくなることです。私が何を変えるかは本当に問題ではありません。「Debug As」でサーバーを起動すると、Apache Click と Shiro が起動しなくなり、localhost にアクセスすると、Tomcat による 404 メッセージが表示されます。面白いことに、変更を元に戻しても問題は解決しません。唯一役立つのは、プロジェクト全体の GIT -> Replace With コマンドです。
編集: pom.xml で何も変更せずに Maven -> Update Project を実行しても、問題があることがわかりました。
すべてが正常に動作する場合の変更前のログ ファイルは次のとおりです。
Nov 15, 2012 10:28:10 AM 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\jdk1.7.0\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Java\jdk1.7.0\jre\bin;C:/Program Files/Java/jdk1.7.0/bin/../jre/bin/client;C:/Program Files/Java/jdk1.7.0/bin/../jre/bin;C:/Program Files/Java/jdk1.7.0/bin/../jre/lib/i386;C:\Program Files\Java\jdk1.7.0\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\apache-maven-3.0.4\bin;C:\Program Files\Java\jdk1.7.0\bin;C:\Program Files\Eclipse JEE Indigo;;.
Nov 15, 2012 10:28:12 AM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:testproject' did not find a matching property.
Nov 15, 2012 10:28:12 AM org.apache.coyote.AbstractProtocolHandler init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
Nov 15, 2012 10:28:12 AM org.apache.coyote.AbstractProtocolHandler init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
Nov 15, 2012 10:28:12 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 2201 ms
Nov 15, 2012 10:28:12 AM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Nov 15, 2012 10:28:12 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.12
Nov 15, 2012 10:28:13 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(D:\Data\Programming\Eclipse Workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\testproject\WEB-INF\lib\servlet-api-1.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Nov 15, 2012 10:28:13 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(D:\Data\Programming\Eclipse Workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\testproject\WEB-INF\lib\servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Nov 15, 2012 10:28:13 AM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Shiro environment
[Click] [info ] *** Initializing Click 2.3.0 in development mode ***
[Click] [info ] initialized LogService: org.apache.click.service.ConsoleLogService
[Click] [info ] found jar: file:/D:/Data/Programming/Eclipse%20Workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/testproject/WEB-INF/lib/click-nodeps-2.3.0.jar
[Click] [info ] Click 2.3.0 initialized in development mode
Nov 15, 2012 10:28:14 AM org.apache.coyote.AbstractProtocolHandler start
INFO: Starting ProtocolHandler ["http-bio-8080"]
Nov 15, 2012 10:28:14 AM org.apache.coyote.AbstractProtocolHandler start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
Nov 15, 2012 10:28:14 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 2076 ms
[Click] [info ] handleRequest: /index.htm - 57 ms
これは、pom ファイルに最小限の変更を加えた後のログです。
Nov 15, 2012 10:25:23 AM 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\jdk1.7.0\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Java\jdk1.7.0\jre\bin;C:/Program Files/Java/jdk1.7.0/bin/../jre/bin/client;C:/Program Files/Java/jdk1.7.0/bin/../jre/bin;C:/Program Files/Java/jdk1.7.0/bin/../jre/lib/i386;C:\Program Files\Java\jdk1.7.0\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\apache-maven-3.0.4\bin;C:\Program Files\Java\jdk1.7.0\bin;C:\Program Files\Eclipse JEE Indigo;;.
Nov 15, 2012 10:25:24 AM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:testproject' did not find a matching property.
Nov 15, 2012 10:25:24 AM org.apache.coyote.AbstractProtocolHandler init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
Nov 15, 2012 10:25:24 AM org.apache.coyote.AbstractProtocolHandler init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
Nov 15, 2012 10:25:24 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 570 ms
Nov 15, 2012 10:25:24 AM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Nov 15, 2012 10:25:24 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.12
Nov 15, 2012 10:25:39 AM org.apache.coyote.AbstractProtocolHandler start
INFO: Starting ProtocolHandler ["http-bio-8080"]
Nov 15, 2012 10:25:39 AM org.apache.coyote.AbstractProtocolHandler start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
Nov 15, 2012 10:25:39 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 14905 ms
ここで何が起こっているのか誰か説明できますか? ヒントに感謝します!