Определение платформы (Windows или Linux) по groovy / grails - PullRequest
30 голосов
/ 14 января 2011

Есть ли способ определить платформу (Window / Linux), на которой работает веб-сайт Groovy / Grails?

Ответы [ 2 ]

55 голосов
/ 14 января 2011
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 голос
/ 12 мая 2018

или для краткости:

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

Так как groovy предоставляет доступ к Map для getAt/putAt методов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...