我有一種情況,我必須檢查 IBM i 上的 java 版本是否等于 1.8。在我的 CL 程序中有一個 RUNJVA 調用,它運行一個依賴于 Java 1.8 的 jar 文件。我只想在 IBM i 機器有 Java 1.8 時運行該命令。在 IBM i 上有很多方法可以查看 java 版本,但要以編程方式檢查版本,我需要以某種方式在變量中獲取版本信息。一種方法是運行命令RUNJVA 類(*版本)輸出(*打?。┎募倜摍C文件中讀取版本。但是這種方法應該有效,但我正在尋找更無縫的方法。另外閱讀假脫機文件以獲取信息似乎不是一個好方法
2 回答

侃侃爾雅
TA貢獻1801條經(jīng)驗 獲得超16個贊
我不確定這是否被認為是優(yōu)雅的,但你至少不必處理假脫機文件。我將 java -version 的輸出寫入一個數(shù)據(jù)區(qū)域,然后您可以獲取該數(shù)據(jù)區(qū)域:
創(chuàng)建一個數(shù)據(jù)區(qū)來保存 java_version 文件第一行的值。您可以將這些添加到您的 CL 中:
QSH CMD('java -version 2> /some/IFSdir/java_version')
QSH CMD('head -n 1 /some/IFSdir/java_version | datarea -w /qsys.lib/doug
.lib/testing.dtaara')
然后只需將數(shù)據(jù)區(qū)域抓取到一個變量中并在那里進行評估。
添加回答
舉報
0/150
提交
取消