2015-10-19 86 views
1

目前我有一個Java項目,我應該支持它的不同版本,它使用不同版本的Java(以及一些工具,如Ant)。取決於問題票據我需要處理Java版本(7和8),並且經常在它們之間切換。 有人可以建議最好的方式來處理它更容易?我工作在Windows 7上,所以我寫了這樣的BAT文件切換(「switch_java.bat」):在Windows上的兩個Java版本之間切換

@ECHO OFF 
set changeToNewVersion=%1 

IF "%changeToNewVersion%"=="true" (
    setx /M ANT_HOME "c:\Program Files\Ant\apache-ant-1.9.4" 
    setx /M JAVA_HOME "c:\Program Files\Java\jdk1.8.0_51" 
) ELSE IF "%changeToNewVersion%"=="false" (
    setx /M ANT_HOME "c:\Program Files\Ant\apache-ant-1.8.3" 
    setx /M JAVA_HOME "c:\Program Files\Java\jdk1.7.0_79" 
) ELSE (
    echo ERROR: Enter key! 
) 

但也許還有更多的最佳解決方案?

回答

0

對於在一個環境中管理不同版本的Java,我們可以使用jEnv tool。安裝並添加到Path環境變量後,所有需要做的是:

  • 添加你需要jEnv配置,像所有的Java版本:

    jenv add c:\Program Files\Java\jdk1.7.0_80 
    
  • 配置JVM使用哪個(全球範圍內,通過目錄或當前shell實例):

    jenv global jdk1.7.0_80 
    
1

IMO,這主要是基於意見的問題,但我不認爲,你可能會找到一個更好的解決方案,然後批處理腳本來做到這一點。

從我的角度來看,使用參數製作腳本可能不是非常有用,因爲它應該通過命令行或從另一個bat文件執行。

所以,你可以創建2個獨立的bat文件,一個設置jdk 1.7,第二個設置jdk 1.8。或者您可以修改您的腳本,以確定當前版本並設置另一個版本。在這兩種情況下,您都可以簡單地調用執行bat文件而不提供任何附加參數。

+0

謝謝您的回覆,我想,我會分裂我腳本分成兩部分,分別爲每個版本。但是,我正在尋找更多的「標準」解決方案,如果存在的話。 –

+0

是的,我明白了,但是據我所知,批處理腳本正是這種解決方案。但看到任何其他可能的解決方案會很有趣 – Stanislav