I think there is issue with ‘idea’ plugin and dependency tracking. Full project that reproduces the issue can be found here https://github.com/wstrzalka/gradle-idea-plugin-bug-reproduction
============ build.gradle ============== plugins {
id ‘java’
id ‘war’
id ‘idea’ }
repositories {
flatDir {
dirs ‘lib’
} }
configurations {
sampleCompile
sampleRuntime
}
dependencies {
compile name:“compile”
runtime name:“runtime”
providedCompile name:“providedCompile”
providedRuntime name:“providedRuntime”
sampleCompile name:“sampleCompile”
sampleRuntime name:“sampleRuntime” }
idea {
module {
scopes.PROVIDED.minus += [configurations.providedCompile, configurations.providedRuntime]
scopes.RUNTIME.plus += [configurations.sampleRuntime, configurations.providedRuntime]
scopes.COMPILE.plus += [configurations.sampleCompile, configurations.providedCompile]
} } task wrapper(type: Wrapper) {
gradleVersion = ‘2.3’ } =========================================================
As a quick summary - idea.module.scopes let the dependencies to be added and removed from particular Idea scopes but it don’t let them be moved. In the sample I would like the standard ‘war’ plugin configurations providedRuntime & providedCompile to be moved from scopes.PROVIDED to scopes.RUNTIME & scopes.COMPILE respectivelly but they don’t appear in the target iml at all - they are lost.