[英]how can I find JRE version of running application in Linux server
我得到的結果不足,是否表示我擁有JDK 1.7.0_45且JRE為1.42? 請指教。
$ javac -version
Eclipse Java Compiler v_677_R32x, 3.2.1 release, Copyright IBM Corp 2000, 2006. All rights reserved.
$ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)
$ alternatives --config java
There is 1 program that provides 'java'.
Selection Command
-----------------------------------------------
*+ 1 **/usr/lib/jvm/jre-1.4.2-gcj/bin/java**
Enter to keep the current selection[+], or type selection number:
看來您已經安裝了兩個版本的Java:
PATH上的Java是Java 1.7.0。 我認為這是Oracle構建,而不是Linux系統軟件包存儲庫中的構建。
使用alternatives
配置的Java看起來像是與Java 1.4.2兼容的GCJ Java。 它可能是從軟件包存儲庫安裝的。 IMO,從技術角度考慮,不建議使用此功能。 實際上,我建議您將其卸載。
實際上,在將外部jar文件上載到Informatica powercenter Java轉換后,出現“ Unsupported major.minor version 51.0”錯誤。
這意味着Informatica正在使用Java 1.4.2安裝。
現在,應用程序使用的Java版本將取決於應用程序的啟動器/啟動腳本使用的Java版本。 這可能取決於許多因素:
java
命令使用絕對路徑,則將使用該路徑。 java
),則使用的版本將取決於啟動器的$PATH
。 這可能是正在發生的事情...並且所使用的$PATH
與shell的$PATH
。 那么解決方案是什么?
您可以將Oracle Java安裝添加到alternatives
系統。 請參閱man alternatives
或Google,以獲取有關使用“ java oracle替代品安裝”的說明。
您可以調整應用程序啟動器使用的$ PATH。
根據您的Linux發行版,您可以從軟件包存儲庫中安裝OpenJDK 1.7.0 JDK或JRE。 這將(應該)將新安裝的Java添加到alternatives
數據庫,以便您可以選擇它而不是舊的GCJ 1.4.2安裝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.