我正在使用带有tomcat7-maven插件的maven并且它工作得很好。最近我注意到一条消息说
At least one JAR was scanned for TLDs yet contained no TLDs.
Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them.
所以我做了一些研究,并意识到我需要为不包含TLD的jar设置jarsToSkip属性。我一直在研究如何找到导致问题的罐子,但运气不好,接缝tomcat7-maven-plugin不能通过我输出罐子名称所需的loggersettings。
当我找到罐子时,我也不知道我在哪里设置了jarsToSkip属性。
任何帮助都将不胜感激。
答案 0 :(得分:3)
相信财产jarsToSkip是一个“catalina.properties”条目。您的Tomcat conf文件夹在哪里查看文件“catalina.properties”,您应该在第90行左右看到这样的属性:
tomcat.util.scan.DefaultJarScanner.jarsToSkip=\
您应该能够将jar添加到该列表中,以防止它们被扫描。
至于找到导致问题的罐子,这将更难确定。可能还有一些试错工作要做。
答案 1 :(得分:2)
使用Tomcat 7 Maven插件时,您在其中放入catalina.properties的任何内容都可以放入插件配置中。即。
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0</version>
<configuration>
<useTestClasspath>true</useTestClasspath>
<path>/</path>
<systemProperties>
<tomcat.util.scan.DefaultJarScanner.jarsToSkip>
myjar.jar
</tomcat.util.scan.DefaultJarScanner.jarsToSkip>
</systemProperties>
</configuration>
</plugin>
答案 2 :(得分:0)
在2.2(即2.0)之前,maven tomcat插件似乎存在一个错误,<systemProperties>
似乎没有传播。同样在2.2
中添加了一个名为<jarScanAllDirectories>
的配置选项,这似乎可以进一步提高性能(我认为它忽略了WEB-INF /类)。
忽略端口和路径我发现以下配置可以极大地提高Maven Tomcat的性能。
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>9090</port>
<path>/</path>
<jarScanAllDirectories>false</jarScanAllDirectories>
<systemProperties>
<org.apache.catalina.startup.ContextConfig.jarsToSkip>*.jar</org.apache.catalina.startup.ContextConfig.jarsToSkip>
<tomcat.util.scan.DefaultJarScanner.jarsToSkip>*.jar</tomcat.util.scan.DefaultJarScanner.jarsToSkip>
</systemProperties>
</configuration>
</plugin>
答案 3 :(得分:0)