public class OSInfo {
private static final String OS_NAME = System.getProperty("os.name").toLowerCase();
private OSInfo() {
}
public static EPlatform getOSName() {
if (OS_NAME.contains("windows")) {
return EPlatform.WINDOWS;
} else if (OS_NAME.contains("mac")) {
return EPlatform.MAC;
} else if (OS_NAME.contains("linux")) {
return EPlatform.LINUX;
}
return EPlatform.OTHERS;
}
}
public enum EPlatform {
WINDOWS,
MAC,
LINUX,
OTHERS;
}
還有很多系統(tǒng)就不一一列舉
通過(guò)System.getProperty() 還可以獲取系統(tǒng)的其他配置信息
| Key | Description of Associated Value | 中文說(shuō)明 |
|---|---|---|
| java.version | Java Runtime Environment version | Java 運(yùn)行時(shí)環(huán)境版本 |
| java.vendor | Java Runtime Environment vendor | Java 運(yùn)行時(shí)環(huán)境供應(yīng)商 |
| java.vendor.url | Java vendor URL | Java 供應(yīng)商的 URL |
| java.home | Java installation directory | Java 安裝目錄 |
| java.vm.specification.version | Java Virtual Machine specification version | Java 虛擬機(jī)規(guī)范版本 |
| java.vm.specification.vendor | Java Virtual Machine specification vendor | Java 虛擬機(jī)規(guī)范供應(yīng)商 |
| java.vm.specification.name | Java Virtual Machine specification name | Java 虛擬機(jī)規(guī)范名稱 |
| java.vm.version | Java Virtual Machine implementation version | Java 虛擬機(jī)實(shí)現(xiàn)版本 |
| java.vm.vendor | Java Virtual Machine implementation vendor | Java 虛擬機(jī)實(shí)現(xiàn)供應(yīng)商 |
| java.vm.name | Java Virtual Machine implementation name | Java 虛擬機(jī)實(shí)現(xiàn)名稱 |
| java.specification.version | Java Runtime Environment specification version | Java 運(yùn)行時(shí)環(huán)境規(guī)范版本 |
| java.specification.vendor | Java Runtime Environment specification vendor | Java 運(yùn)行時(shí)環(huán)境規(guī)范供應(yīng)商 |
| java.specification.name | Java Runtime Environment specification name | Java 運(yùn)行時(shí)環(huán)境規(guī)范名稱 |
| java.class.version | Java class format version number | Java 類格式版本號(hào) |
| java.class.path | Java class path | Java 類路徑 |
| java.library.path | List of paths to search when loading libraries | 加載庫(kù)時(shí)搜索的路徑列表 |
| java.io.tmpdir | Default temp file path | 默認(rèn)的臨時(shí)文件路徑 |
| java.compiler | Name of JIT compiler to use | 要使用的 JIT 編譯器的名稱 |
| java.ext.dirs | Path of extension directory or directories | 一個(gè)或多個(gè)擴(kuò)展目錄的路徑 |
| os.name | Operating system name | 操作系統(tǒng)的名稱 |
| os.arch | Operating system architecture | 操作系統(tǒng)的架構(gòu) |
| os.version | Operating system version | 操作系統(tǒng)的版本 |
| file.separator | File separator ("/" on UNIX) | 文件分隔符(在 UNIX 系統(tǒng)中是“/”) |
| path.separator | Path separator (":" on UNIX) | 路徑分隔符(在 UNIX 系統(tǒng)中是“:”) |
| line.separator | Line separator ("\n" on UNIX) | 行分隔符(在 UNIX 系統(tǒng)中是“/n”) |
| user.name | User's account name | 用戶的賬戶名稱 |
| user.home | User's home directory | 用戶的主目錄 |
| user.dir | User's current working directory | 用戶的當(dāng)前工作目錄 |