gradle - How do I copy a file into my WAR based on profile? -
i’m using gradle 2.7 on mac yosemite. have following files:
src/main/environment/dev/context.xml src/main/environment/qa/context.xml src/main/environment/prod/context.xml what if run build gradle -pqa build, appropriate context.xml file above copied war (into web-inf/classes directory fine). how set gradle?
there're many ways of solving problem. can configure sourcesets, or include or exclude particular resources when building war file. can have single context.xml , perform resource filtering replacetokens filter.
i've chosen sourcesets:
apply plugin: 'war' ext.env = project.hasproperty('env') ? project.env : 'dev' sourcesets { main { resources { srcdir "src/main/environment/$env" } } } the trick include/process env being passed. if no env passed dev picked further processing. have demo.
Comments
Post a Comment