首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >检测Windows还是Linux?

检测Windows还是Linux?
EN

Stack Overflow用户
提问于 2013-01-12 07:13:51
回答 4查看 125.1K关注 0票数 141

我正在寻求在Windows和Linux上运行一个通用的Java程序。

程序需要在每个平台上做一些不同的事情。

那么,我的Java程序如何/应该检测它是在Linux还是Windows下运行呢?

EN

回答 4

Stack Overflow用户

发布于 2013-01-12 08:35:32

apache commons lang有一个可以使用的类SystemUtils.java

代码语言:javascript
复制
SystemUtils.IS_OS_LINUX
SystemUtils.IS_OS_WINDOWS
票数 201
EN

Stack Overflow用户

发布于 2013-01-12 07:25:21

尝试:

代码语言:javascript
复制
System.getProperty("os.name");

http://docs.oracle.com/javase/7/docs/api/java/lang/System.html#getProperties%28%29

票数 88
EN

Stack Overflow用户

发布于 2014-07-21 17:02:02

您可以使用这个有用的简单class

代码语言:javascript
复制
public class OSValidator {
 
    private static String OS = System.getProperty("os.name").toLowerCase();
 
    public static void main(String[] args) {
 
        System.out.println(OS);
 
        if (isWindows()) {
            System.out.println("This is Windows");
        } else if (isMac()) {
            System.out.println("This is MacOS");
        } else if (isUnix()) {
            System.out.println("This is Unix or Linux");
        } else if (isSolaris()) {
            System.out.println("This is Solaris");
        } else {
            System.out.println("Your OS is not supported!!");
        }
    }
 
    public static boolean isWindows() {
        return OS.contains("win");
    }
 
    public static boolean isMac() {
        return OS.contains("mac");
    }
 
    public static boolean isUnix() {
        return (OS.contains("nix") || OS.contains("nux") || OS.contains("aix"));
    }
 
    public static boolean isSolaris() {
        return OS.contains("sunos");
    }

    public static String getOS(){
        if (isWindows()) {
            return "win";
        } else if (isMac()) {
            return "osx";
        } else if (isUnix()) {
            return "uni";
        } else if (isSolaris()) {
            return "sol";
        } else {
            return "err";
        }
    }
    
}
票数 60
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14288185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档