1. ホーム
  2. gradle

[解決済み] Gradleから現在のOSを検出する方法

2022-08-27 15:59:16

質問

Groovyで行う方法について、このような回答がありました。

Groovy/Grailsによるプラットフォーム(WindowかLinuxか)の検出 :

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

もっと良い方法はないのでしょうか?

どのように解決するのですか?

実は、Gradleのプロジェクトを見てみると、こちらの方が少しすっきりしているように見えます。 Antの の既存の構造を使用しているので、少しすっきりしています。

import org.apache.tools.ant.taskdefs.condition.Os

task checkWin() << {
    if (Os.isFamily(Os.FAMILY_WINDOWS)) {
        println "*** Windows "
    }
}

以下のGradleのブランチで見つけたのですが、うまく動作しているようです。 gradle/gradle-core/branches/RB-0.3/build.gradleです。