通过groovy / grails检测平台(Window或Linux)

时间:2011-01-14 08:35:25

标签: grails groovy platform-detection

有没有办法检测Groovy / Grails运行网站的平台(Window / Linux)?

2 个答案:

答案 0 :(得分:55)

System.properties['os.name']

将返回操作系统的名称,例如“Windows XP”。因此,如果您想知道自己是否在Windows上运行,可以执行以下操作:

if (System.properties['os.name'].toLowerCase().contains('windows')) {
    println "it's Windows"
} else {
    println "it's not Windows"
}

或者,org.apache.commons.lang.SystemUtils(来自Apache commons-lang项目)公开了一些布尔常量,这些常量提供与上述代码相同的信息,例如

SystemUtils.IS_OS_MAC
SystemUtils.IS_OS_WINDOWS
SystemUtils.IS_OS_UNIX

还可以使用更具体的常量

SystemUtils.IS_OS_WINDOWS_2000
SystemUtils.IS_OS_SOLARIS
SystemUtils.IS_OS_MAC_OSX

答案 1 :(得分:1)

或简称:

if (System.env['OS'].contains('Windows')){ println "it's Windows" }

由于groovy提供了对getAt/putAt方法的Map访问。