2016-09-22 6 views
0

Gradleで生成されたWARファイルのファイルを置き換えようとしています。Gradle:WARファイルを上書きする

ファイル構造:

- nodes 
    - staging 
    - localConfig.yml 
    - logback.groovy 
- grails-app 
    - conf 
    - application.yml 
    - logback.groovy 

私は、パラメータ-Pnode=stagingとのGradleスクリプトを実行したときに、最終的なWARにWEB-INF/classesnodes/stagingからファイルをコピーします。

これは私のアプローチです:

war { 
    if (project.hasProperty('node')) { 
     from("stacks/${project.node}") { 
      include('localConfig.yml') 
      include('logback.groovy') 
      into('WEB-INF/classes') 
     } 
    } 
} 

このGradleのスクリプトは、しかしlogback.groovyが交換されていない、WEB-INF/classeslocalConfig.ymlをコピーします。

元のものを保持する代わりに、重複したファイルを置き換えるためにgradleを設定するにはどうすればよいですか?

答えて

0

私はあなたがWEB-INF/classes 例えばに追加するclasspath methodを使用する必要があると思う:

war { 
    if (project.hasProperty('node')) { 
     classpath "stacks/${project.node}/localConfig.yml", "stacks/${project.node}/logback.groovy" 
    } 
} 

それとも

war { 
    if (project.hasProperty('node')) { 
     classpath fileTree("stacks/${project.node}") 
    } 
} 
関連する問題