oslib
Pre macOS renaming release
Java库可以轻松检测运行操作系统,BSD风味,Linux发行,桌面环境和体系结构
AbstractOperatingSystem os = OperatingSystem . getOperatingSystem ();
if ( os . getType () == OperatingSystem . LINUX ) {
LinuxOperatingSystem los = ( LinuxOperatingSystem ) os ;
if ( los . getDistro () == Distro . ELEMENTARY_OS ) {
System . out . println ( "Is running eOS" );
} else {
System . out . println ( "Is running " + los . getDisplayString ());
}
} AbstractOperatingSystem os = OperatingSystem . getOperatingSystem ();
if ( os . getType () == OperatingSystem . MACOS ) {
MacOSOperatingSystem xos = ( MacOSOperatingSystem ) os ;
if ( xos . getVersion () == MacOSVersion . YOSEMITE ) {
System . out . println ( "Is running Yosemite " + xos . getVersion (). getVersion ());
// Will print: Is running Yosemite 10.10
}
System . out . println ( xos . getDisplayString ());
// Will print (if running mavericks): Mac OS X Mavericks 10.9
}
if ( os . getType () == OperatingSystem . LINUX ) {
LinuxOperatingSystem los = ( LinuxOperatingSystem ) os ;
System . out . println ( los . getDisplayString ());
// Will print (if running Kali): Kali Linux 1.0
if ( los . getArch () == Arch . x86_64 ) {
System . out . println ( "Is 64 bit" );
}
}注意:这些是我唯一与之测试的。在未经测试的系统上会很好地工作,但是检查的系统绝对有效。 1.0后的Linux发行版和BSD风味检测基于ScreenFetch