Java 実行している OS を取得する方法
Java で、実行している OS を取得する方法について紹介します。
Java で開発をおこなう場合、Eclipse を利用することがほとんどですね。そのため、実務で利用する場合、開発は Windows を利用し、テストや本番は Linux や Unix を利用するというケースは多いのではないでしょうか?
上記のような場合で、外部の API を利用しようと思った場合、何の OS で動作しているか知りたくなりますね。以外に知られていない実行している OS を取得する方法について掲載しておきます。
Sponsored Links
最も簡単にJavaでOS情報を取得する方法
System クラスの getProperty メソッドによって、現在使用しているシステムプロパティのセットを取得することができます。
System.getProperty("os.name").toLowerCase();
システムプロパティには、JVM 及び実行される OS の基本的な情報が格納されています。OS のバージョンや JRE のバージョン、クラスパスなどを取得することも可能です。
どのような情報が取得できるかは、Javadoc を参照ください。
Sponsored Links
実行している OS を取得する方法
実行している OS を取得する方法です。
System.getProperty("os.name").toLowerCase();
を都度記述するのはソースの美しさを損ねるので、ユーティリティクラスを作って対応しましょう。
サンプルソース
サンプルソースは下記の通りです。
public class PlatformUtils { private static final String OS_NAME = System.getProperty("os.name").toLowerCase(); public static boolean isLinux() { return OS_NAME.startsWith("linux"); } public static boolean isMac() { return OS_NAME.startsWith("mac"); } public static boolean isWindows() { return OS_NAME.startsWith("windows"); } public static boolean isSunOS() { return OS_NAME.startsWith("sunos"); } }
テスト
それでは、以下のようなテストを実施してみましょう。
実機は Windows 7 です。
System.out.println(PlatformUtils.isLinux()); System.out.println(PlatformUtils.isMac()); System.out.println(PlatformUtils.isSunOS()); System.out.println(PlatformUtils.isWindows());
結果は以下のようになりました。
false false false true
OS の情報を知ることで可能となるロジックも多々あります。ここでしっかり覚えておきましょうね。
参考サイト
[Java] Java から Windows OS のバージョンを取得する
おつかれさまでした。
Sponsored Links