簡體   English   中英

如何在 jboss 的 standalone.xml 中的屬性名稱中使用環境變量?

[英]How do I use environment variables in an attribute name in jboss' standalone.xml?

我知道在一個字段中,我可以使用 ${env.VARIABLE_NAME} 的語法提取環境變量,但是,每當我嘗試在屬性名稱中執行此操作時,jboss 都會拋出錯誤。

我所做的和有效的

                <datasource jndi-name="java:/jdbc/database" pool-name="database" enabled="true" use-java-context="true">
                    <connection-url>${env.DS_CONNECTION_URL}</connection-url>
                    <driver>${env.DS_DRIVER}</driver>
                </datasource>

我想做的事,失敗了

            <console-handler name="CONSOLE">
                <formatter>
                    <named-formatter name="${env.FORMATTER}"/>
                </formatter>
            </console-handler>

我也嘗試在沒有周圍引號的情況下開始。 我創建了一個具有 name 值和環境變量的子 xml 元素,但這也失敗了。

我希望使用環境變量 FORMATTER 作為名稱,但在嘗試啟動 jboss 時出現以下錯誤。

java.lang.IllegalArgumentException: Formatter "${env.FORMATTER}" is not found

named-formatter屬性不允許使用表達式。 在大多數情況下,它沒有多大意義,因為必須定義格式化程序並且不能具有動態名稱。

如果您查看模型描述文檔,您可以看到哪些屬性支持表達式。

如何將 env 變量傳遞給其他格式化程序屬性的屬性?

<meta-data>
      <property name="ENV" value="${env.MY_ENVIRONMENT}"/>
</meta-data>

運行時不工作

docker run -p 8081:9990 -p 8080:8080 -e MY_ENVIRONMENT="DEV" --name c1 c1img:1.1.2

我仍然看到

..."ENV":"${env.MY_ENVIRONMENT}"...

暫無
暫無

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

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