[英]How to detect active java version (32bits oder 64 bits) in a batch file
我必須在批處理文件中包含有關OS體系結構和Java體系結構的測試,以便定義適當的內存參數(-Xmx)。
可以進行OS檢測(我們在SysW64上進行測試:
IF EXIST %WINDIR%\SysWOW64\
SET MDM_MEMORY=-Xmx4096m
) ELSE (
SET MDM_MEMORY=-Xmx900m
)
但是現在我想在Java版本(32或64位)上添加進一步的測試。 一些客戶端安裝了Java(在注冊表中),另一些客戶端在磁盤上安裝了Java,程序引用了它。
因此,我想確保:
我想確定體系結構,而不是從Java bin的路徑或其他名稱,因為:
我試圖尋找路徑,也使用java -version,但是我被卡在這里
結果是為Windows 32位,帶有Java 32的Windows 64,最后是Windows64 bist / Java 64位定義一個內存參數-Xmx。
理想情況下,我將添加一條消息,指出“檢測到Java 32 bist,這將導致性能下降,請考慮升級到Java 64位”
PS:您已經注意到我不是開發人員,而是在使用以前的同事。 謝謝你的耐心
您可以嘗試以下操作來確定批處理文件中JVM的ARCH
@echo off
java -d32 -version >NUL 2>&1
if %errorlevel%==0 (echo 32 bit JVM detected, this will lead to poorer performance, please consider upgrading to Java 64 bit JVM) else (echo 64 bit JVM detected)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.