2013-02-06 202 views
20

我想在Windows機器上爲Tomcat設置JAVA_OPTS,但如果我添加多個變量,則會一直收到錯誤。如何在Windows中爲Tomcat設置JAVA_OPTS?

例如,這個工程:

set JAVA_OPTS="-Xms512M" 

但這並不:

set JAVA_OPTS="-Xms512M -Xmx1024M" 

它導致錯誤:

Invalid initial heap size: -Xms512M -Xmx1024M 
Error: Could not create the Java Virtual Machine. 
Error: A fatal exception has occurred. Program will exit. 

這是因爲如果我可以設置一個變量(-Xmx也可以)但不是幾個。

我使用指示的setenv.bat文件,我的Tomcat是7.0.35。

回答

23

顯然,正確的方式是沒有 「」

正如

set JAVA_OPTS=-Xms512M -Xmx1024M 
7

嘗試

set JAVA_OPTS=%JAVA_OPTS% -Xms512M -Xmx1024M 
20

對於Windows,如果變量值有空格(」「)在其,正確的方法實際上是在變量名之前放置引號(「),如:

set "JAVA_OPTS=-Xms512M -Xmx1024M" 
6

我喜歡拉夫的和user2550946的組合回答最好,但想補充兩個方面:

  1. 不要使用JAVA_OPTS,改用CATALINA_OPTS。這將僅用於啓動tomcat,而不是用於關閉它。通常你在啓動tomcat的時候需要更多的內存,但關閉進程(只需要啓動,告訴tomcat關閉然後再結束)不需要任何專門調整的資源。事實上,如果操作系統無法使用一些可笑的內存,關機甚至可能會失敗。

  2. 在生產系統上,我的建議是立即聲明允許的最大內存。因爲如果您預計內存遲早會被需要,您不希望發現它在夜間凌晨3點不可用,而是在您啓動服務器時。因此,在生產系統中將-Xmx-Xms設置爲相同的值。 (這使我的方面1甚至更爲貼切)

,或者在一個行,這裏是我的建議:

set "CATALINA_OPTS=%CATALINA_OPTS% -Xms1024M -Xmx1024M" 
+0

是在setenv.bat文件中正確設置CATALINA_OPTS? – pikimota

2

建議你創建一個setenv.bat文件命名,並把它放在Tomcat bin目錄。這個文件(由catalina.bat和catalina運行)。sh腳本),您可以用JAVA_OPTS變量更改以下Tomcat的環境設置:

您可以用

JVM -Xms設置最小和最大內存堆大小-Xmx參數

最佳限制取決於許多條件,例如Integrator ETL應執行的轉換。對於信息發現轉換,建議最大1 GB。例如,要設置的最小堆大小爲128 MB,最大堆大小爲1024 MB,使用

JAVA_OPTS=-Xms128m -Xmx1024m   

應設置的PermGen(永久代)的存儲器空間的大小比較大的最大限制默認。 64 MB的默認值對於企業應用程序是不夠的。適當的內存限制取決於各種標準,但在大多數情況下,256 MB將是一個不錯的選擇。如果PermGen空間最大值太低,則可能會發生OutOfMemoryError:PermGen空間錯誤。您可以通過以下JVM參數

-XX:MaxPermSize=256m 

出於性能方面的設置PermGen的最大限制,則建議應用程序在服務器模式下運行。默認情況下,Apache Tomcat不在服務器模式下運行。您可以使用JVM -server參數設置服務器模式。您可以在setenv文件的環境變量中的JAVA_OPTS變量中設置JVM參數。

The following is an example of a setenv.bat file: 

set "JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx1024m -XX:MaxPermSize=256m -server" 
1

這是因爲,您希望爲JVM分配的內存量不可用,或者可能是您分配的可用內存量多於可用內存量。嘗試小尺寸,然後你可以看到差異。 嘗試: 集JAVA_OPTS = -Xms128m -Xmx512m -XX:PermSize =128米

0
SET JAVA_HOME=C:\Applications\java\java_8 
SET PATH=%PATH%;C:\Applications\java\java_8\bin 
SET JAVA_OPTIONS=-d64 -Xms128g -Xmx128g 
相關問題