Есть ли простой способ (например, непосредственно из конфигурации tomcat7-maven-plugin), чтобы указать, какие JAR следует пропустить во время запуска Tomcat, чтобы ускорить его?
В документации Tomcat 7 рекомендуется использовать системное свойство org.apache.catalina.startup.ContextConfig.jarsToSkip
(см. Http://wiki.apache.org/tomcat/HowTo/FasterStartUp#JAR_scanning), но при настройке из конфигурации maven это не работает.
После проверки источников tomcat7-maven-plugin, я нашел обходное решение для достижения пропускной способности банок. (Однако он может перестать работать с будущими версиями плагина Maven Tomcat 7).
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<path>/${project.artifactId}</path>
<port>8080</port>
<systemProperties>
<org.apache.catalina.startup.ContextConfig.jarsToSkip>*</org.apache.catalina.startup.ContextConfig.jarsToSkip>
<!-- work around .. see: https://issues.apache.org/jira/browse/MTOMCAT-281 -->
<catalina.config>${project.baseUri}/target/tomcat/logs</catalina.config>
</systemProperties>
</configuration>
</plugin>
Как описано в связанной ошибке (https://issues.apache.org/jira/browse/MTOMCAT-281), проблема в том, что Tomcat слепо переопределяет все свойства системы со свойствами из tomcat-embed-core-7.0.47.jar!/org/apache/catalina/startup/catalina.properties
. В результате переопределяется значение свойства org.apache.catalina.startup.ContextConfig.jarsToSkip
указанного в конфигурации плагина.