對於腳本我提出,我需要一個跨平臺的方法來檢查:如何檢查當前平臺,以及如果java安裝在python中?
- 如果安裝了Java。
- 什麼平臺的腳本上(如Windows/AMD64或Linux/x86平臺)
運行。我怎麼能做到這一點。
編輯:該平臺模塊是完美的數字2,但一種方式來看看是否安裝了Java而不是該版本將是首選。
對於腳本我提出,我需要一個跨平臺的方法來檢查:如何檢查當前平臺,以及如果java安裝在python中?
運行。我怎麼能做到這一點。
編輯:該平臺模塊是完美的數字2,但一種方式來看看是否安裝了Java而不是該版本將是首選。
是How to determine whether java is installed on a system through python?的副本,我同意第二個答案,尤其是你不應該檢查最有可能的答案。你應該記錄你的依賴關係,並讓你的軟件包管理器安裝在任何系統上,而在Windows上,你的用戶自己安裝它。
該platform模塊。
我建議只是試着運行java -version。 java的正確安裝會將它添加到Linux和Windows的路徑中(所以java命令行可以從文件系統的「任意位置」執行)。
例如 - 這裏是結果,當我運行
java -version
java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b06)
Java HotSpot(TM) 64-Bit Server VM (build 23.1-b03, mixed mode)
+1檢查,如果是java的路徑中。 -1平臺模塊 - 通常測試單個功能比操作系統上的if/elif更好。 – user1277476 2012-07-27 20:02:21
聽起來像你不同意這兩點,因爲我沒有促進檢查,如果java是在PATH :)。至於平臺模塊,OP沒有提供任何有關他檢查操作系統的信息,因此它可能是或不是一個好主意。對於大量平臺特定的事情,測試不一定能以任何其他方式進行。 – Julian 2012-07-27 20:05:17
爲什麼你需要每個版本的'elif'?你只是檢查它輸出的東西。再一次,如果你問我,我根本不檢查。 – Julian 2012-07-27 20:50:46