簡體   English   中英

部署戰爭。 Tomcat 不考慮上下文。考慮到 META-INF 中的 xml

[英]Deploying War. Tomcat not taking context.xml from META-INF in consideration

我確實有一個 Spring 啟動應用程序,它使用自定義上下文。xml 用於 tomcat。 context.xml 包含屬性,定義 spring 活動配置文件

<Context>
    <Environment name="spring.profiles.active" value="profileName" type="java.lang.String" override="false" />
</Context>

文件位置是 /src/main/webapps/META-INF 我期望在文件部署到 tomcat 后,上下文 xml 將自動被 Z1B359D8753858B55BEFA044107

事實證明,戰爭已經部署,但 conf/catalina/localhost 仍然是空的。

閱讀文檔后,我發現 server.xml 必須使用 copyXML 參數作為主機容器進行更新。 文檔說:

如果您希望在部署應用程序時將嵌入在應用程序(位於 /META-INF/context.xml)中的上下文 XML 描述符復制到 xmlBase,請設置為 true。 在隨后的啟動中,復制的上下文 XML 描述符將優先於嵌入在應用程序中的任何上下文 XML 描述符使用,即使嵌入在應用程序中的描述符是更新的。 該標志的值默認為 false。 請注意,如果 deployXML 為 false,則此屬性將無效。

我的主機看起來像

<Host name="localhost"  appBase="webapps"
                  unpackWARs="true" autoDeploy="true" copyXML="true">
            </Host>

重新啟動服務器並重新部署應用程序后,/conf/Catalina/localhost 仍然為空。

您有什么建議,為了使用自定義 context.xml,必須采取哪些措施?

我已經想通了。 我的構建腳本沒有正確復制文件,文件名不是“context.xml”而是“appName.xml”,tomcat 沒有把它撿起來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM