Java Tomcat不排除在Tomcat.util.scan.StandardJarScanFilter.jarsToSkip中指定的JAR

Java Tomcat不排除在Tomcat.util.scan.StandardJarScanFilter.jarsToSkip中指定的JAR,java,tomcat,configuration,dockerfile,tomcat8,Java,Tomcat,Configuration,Dockerfile,Tomcat8,我试图通过环境变量设置Tomcat配置设置。它对某些人有效,但似乎对其他人无效 具体地说,我想从TLD文件的扫描中排除某些JAR 这是我的dockerfile: FROM tomcat:8.5.34-jre8 EXPOSE 8080 EXPOSE 8000 ENV CATALINA_OPTS="-Djava.util.logging.config.file=/usr/local/tomcat/webapps/catalinaLogging.properties -Dtomcat.util.s

我试图通过环境变量设置Tomcat配置设置。它对某些人有效,但似乎对其他人无效

具体地说,我想从TLD文件的扫描中排除某些JAR

这是我的dockerfile:

FROM tomcat:8.5.34-jre8

EXPOSE 8080
EXPOSE 8000

ENV CATALINA_OPTS="-Djava.util.logging.config.file=/usr/local/tomcat/webapps/catalinaLogging.properties -Dtomcat.util.scan.StandardJarScanFilter.jarsToSkip=jackson-module-jaxb-annotations-2.7.0.jar"

COPY /target/my.war /usr/local/tomcat/webapps/my.war
COPY /catalinaLogging.properties /usr/local/tomcat/webapps

CMD ["catalina.sh", "jpda", "run"]

catalinaloging.properties
已成功应用,因为我看到了启动期间日志记录的差异。虽然
tomcat.util.scan.StandardJarScanFilter.jarsToSkip
似乎没有被应用,但我仍然在输出中看到以下内容:


  • 我是否必须以不同的方式设置
    tomcat.util.scan.StandardJarScanFilter.jarsToSkip
    属性
  • 我必须使用不同的物业吗

  • 无法通过
    CATALINA\u OPTS
    环境变量配置tomcat.util.scan.StandardJarScanFilter.jarsToSkip,而必须在
    CATALINA.properties
    中配置


    但是,
    catalina.properties
    的位置可以通过Andreas描述的
    -Dcatalina.config=/path/to/folder
    进行配置。

    tomcat.util.scan.StandardJarScanFilter.jarsToSkip
    是在
    tomcat_BASE/conf/catalina.properties
    文件中定义的属性。它不是系统属性。如果您想列出更多要跳过的jar文件,您需要修改
    catalina.properties
    文件。谢谢@Andreas。如果我无法访问该文件,是否无法通过环境变量从外部配置该文件?为什么您可以访问运行tomcat的脚本,但不能访问tomcat配置文件?这毫无意义。我这里的示例是我们应用程序的一个停靠版本。在生产环境中,它作为托管服务在Azure上运行。如果您能解释一下
    java.util.logging.config.file
    tomcat.util.scan.StandardJarScanFilter.jarsToSkip
    的不同之处,以及为什么可以通过
    CATALINA\u OPTS
    设置一个,而不是另一个,那就太棒了。