![](/img/trans.png)
[英]How can I specify “Context path” on Tomcat 8 inside META-INF/context.xml in java war file?
[英]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.