oslib
Pre macOS renaming release
Biblioteca Java para detectar fácilmente el sistema operativo, sabor BSD, distribución de Linux, entorno de escritorio y arquitectura
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" );
}
}Nota: Estos son los únicos con los que he probado. Funcionará bien en sistemas no probados, pero los controlados están funcionando absolutamente. La detección de sabores de Linux Distro y BSD después de 1.0 se basa en la pantalla de pantalla