Windows-Server-2012-R2
<jvm-arg> 未添加到 Resin 4、Windows Server 2012 上的 JVM
我們正在從 Linux (Ubuntu) 遷移到 Windows Server 2012R2(不要問!)並且遇到了 Resin 的設置問題:
使用打包
setup.exe
工具安裝 Resin 4 Pro,resin.exe
創建為 Windows 服務就好了。它啟動並能夠部署配置為<host>
’s in 的webappsresin.xml
。但是我們有一些依賴於 JVM 環境變數的應用程序。在 Linux 上也配置了這些resin.xml
,例如:<jvm-arg>-Dsome.secret.domain=very.secret.com</jvm-arg>
但似乎這些在啟動 Resin 作為服務時***根本沒有添加到 JVM 參數列表中。***我們的conf文件的結構是
<cluster id="app-tier"> <server-multi ... /> <server-default> <jvm-arg> ... <host> ...
我的理解是這是正確的(它對應於我們的 Linux 設置)。
嘗試使用手動啟動 Resin
java -jar resin.jar start
不會改變任何東西(甚至明確添加
-conf resin.xml
完整路徑)。將 JVM 參數顯式添加到該語句中是可行的,但是 - 奇怪的是 - 它們隨後在看門狗 JVM 程序命令行上出現兩次,在 Resin JVM 上出現四次!歡迎任何想法 - 當然,我也在聯繫 Caucho。
經過多次配置編輯和重新啟動後,XML 配置中的順序****很重要。
因此移動
<server-multi .../>
下面的<server-default>
部分解決了這個問題:<cluster id="app-tier"> <server-default> <jvm-arg> ... <server-multi ... /> <host> ...
來自Caucho的 Alex Rojkov 證實了這一點:
乾杯,