ない私は、私はそれを行う方法や、それを回避する方法を発見したが、ここで私がやってしまった、それが働いていた何を言うべきかを確認します。
はVARを定義私は動的にしたいオプションとgrunt.initConfig
前に定義し、いくつかのデフォルト値は:
grunt.initConfig({
globalConfig: globalConfig,
...
パラメータ化された0:grunt.initConfig
以内にそれを定義
var globalConfig = {
war_name:'name',
webxml_display_name:'display_name'
};
タスクにそれを利用できるようにしますgrunt-war
が呼び出される前に、
grunt.registerTask('war-config', function(target){
if(target==='1st'){
globalConfig.war_name='name_1st';
globalConfig.webxml_display_name='display_name_1st';
}else if(target==='2nd'){
...
}else ...
});
そして最後にbuild
タスク内のタスクと呼ばれる::設定が:
war: {
target: {
options: {
war_dist_folder: './dist',
war_verbose: true,
war_name: '<%= globalConfig.war_name %>',
webxml_welcome: 'index.html',
webxml_display_name: '<%= globalConfig.webxml_display_name %>'
},
...
}
}
パラメータを設定するタスクを定義
grunt.registerTask('build', function(environment, target) {
grunt.task.run([
'clean:dist',
...
'war-config:'+target,
'war'
]);
});
私はそれを行う最良の方法であるかどうかはわかりませんが、意図したとおりに動作するようです。