Question

Is there a way to detect the platform (Window / Linux) in which the website is running by Groovy / Grails?

Was it helpful?

Solution

System.properties['os.name']

will return the name of the OS, e.g. "Windows XP". So if you want to figure out whether you're running on Windows or not, you could do something like:

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

Alternatively, org.apache.commons.lang.SystemUtils (from the Apache commons-lang project) exposes some boolean constants that provide the same information as the code above, e.g.

SystemUtils.IS_OS_MAC
SystemUtils.IS_OS_WINDOWS
SystemUtils.IS_OS_UNIX

More specific constants such as these are also available

SystemUtils.IS_OS_WINDOWS_2000
SystemUtils.IS_OS_SOLARIS
SystemUtils.IS_OS_MAC_OSX

OTHER TIPS

or for short:

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

Since groovy provide a Map access to getAt/putAt methods.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top