6

私はgrails2.1を使用しています。

本番用にビルドするときにプラグインを除外する必要があります。

この投稿では、プラグインへのスコープの追加について言及しています。これには、個々のプラグイン記述子を編集する必要があると思いますか?

除外するプラグインを 1 つの場所で定義したいと考えています。

config.groovy に以下を追加しようとしました:

environments {
    production {
    plugin.excludes='grails-melody'
    }
}

war を確認すると、まだ WEB-INF/plugins の下にメロディー フォルダーが含まれています。

ほとんどのアプリケーション プラグインは、次のように application.properties で指定されていることを付け加えておきます。

plugins.build-test-data=2.0.3
plugins.fixtures=1.1
plugins.geoip=0.2
plugins.grails-melody=1.12
etc...

本番ビルド用の特定のプラグインを除外するにはどうすればよいですか?

ありがとう

4

4 に答える 4

8

buildConfig.groovy で、エクスポートしないプラグインを定義できます。

plugins {
  compile(':theplugin:theversion') {
    export = false
  }
}
于 2013-01-24T12:48:34.790 に答える
7

リングに答えを投げさせてください。@hitty5 が提案しているものに似ていますが、いくつかの変更 (およびバグ修正) があります。

私たちにとって、DEVELOPMENT 環境で作業するときは、リソースを完全に表示したいので、一部のページ速度プラグインを除外することが重要です。一方で、ブロック間ですべてのマシンにあるはずのプラグインをコピーしたくありません (@hitty5 のソリューションで必要になるように)。

plugins {
    runtime ":hibernate:$grailsVersion"
    // ... some more plugins that I want in every environment

    if (Environment.getCurrent() in [Environment.PRODUCTION, Environment.TEST]) {
        // plugins, that I only want on the test and production servers
        println("BuildConfig: including page speed optimization plugins.")
        runtime ":zipped-resources:1.0"
        compile ":cache-headers:1.1.5"
        runtime ":cached-resources:1.0"
        runtime ":yui-minify-resources:0.1.5"
    }

    // ... and more plugins, if you like
    build ":tomcat:$grailsVersion"

}

お役に立てれば。

万歳、フラクソン

于 2013-05-31T11:29:03.983 に答える
3

BuildConfig.groovy で、特定の環境でエクスポートしないようにプラグインを定義できます。

    plugins {
      compile(':theplugin:theversion') {
         if (Environment.getCurrent() == Environment.PRODUCTION) {
            export = false
         }
      }
    }

追加することを忘れないでください

import grails.util.Environment

BuildConfig.groovy の冒頭

于 2014-01-29T16:58:48.823 に答える
3

まず、ビルド構成ファイル (BuildConfig.groovy) を使用してプラグインの依存関係を解決することをお勧めします。このファイル内で、次のような env 固有のブロックを定義できます。

if (environment == Environment.PRODUCTION){
    plugins {            
            compile ":<plugin>:<version>"
        }
    }
else {
        plugins {            
            compile ":<plugin>:<version>"
        }
}
于 2013-01-24T12:49:19.103 に答える