设置 JARs to skip 以加速 Tomcat 7 maven 插件启动
Set JARs to skip in order to speed up Tomcat 7 maven plugin startup
是否有一种简单的方法(例如,直接从 tomcat7-maven-plugin 配置)指定在 Tomcat 启动期间应跳过哪些 JAR 以加快速度起来了吗?
Tomcat7 文档鼓励使用系统属性org.apache.catalina.startup.ContextConfig.jarsToSkip
(参见http://wiki.apache.org/tomcat/HowTo/FasterStartUp#JAR_scanning),但是当从 maven 配置设置时,它不起作用。
检查 tomcat7-maven-plugin 的来源后,我找到了实现 jar 跳过的解决方法。 (但是,它可能会停止与 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
系统 属性 的值被覆盖。
是否有一种简单的方法(例如,直接从 tomcat7-maven-plugin 配置)指定在 Tomcat 启动期间应跳过哪些 JAR 以加快速度起来了吗?
Tomcat7 文档鼓励使用系统属性org.apache.catalina.startup.ContextConfig.jarsToSkip
(参见http://wiki.apache.org/tomcat/HowTo/FasterStartUp#JAR_scanning),但是当从 maven 配置设置时,它不起作用。
检查 tomcat7-maven-plugin 的来源后,我找到了实现 jar 跳过的解决方法。 (但是,它可能会停止与 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
系统 属性 的值被覆盖。