您无法更改配置“已提供的运行时间”。因为它已经解决了

时间:2015-03-22 06:03:04

标签: gradle

我正在使用Grader 2.0和Groovy 2.3.3。 当我运行下面的构建时,我收到错误> You can't change configuration 'providedRuntime' because it is already resolved!

其他postsrelease notes表明它与+=有关,但是,我没有使用该运算符,所以我有点困惑。

apply plugin: 'war'

repositories {
    mavenCentral()
}

//We don't want transitive dependencies added as we are matching a third-party build
configurations.all {
    transitive = false
}

war  {
    archiveName='gradle.war'

    from(configurations.providedRuntime.files) {
      into "app-jars"
    }
    classpath fileTree('webinf-libs') // adds a file-set to the WEB-INF/lib dir.
}

dependencies {
  providedRuntime group: 'com.thoughtworks.xstream', name: 'xstream', version: '1.4.2'
}

1 个答案:

答案 0 :(得分:0)

将战争配置更改为:

war  {
    archiveName='gradle.war'

    from(configurations.providedRuntime) {
      into "app-jars"
    }
    classpath fileTree('webinf-libs') // adds a file-set to the WEB-INF/lib dir.
}

将解决问题。

问题出现是因为在files配置块中调用了war然后将依赖项添加到 providedRuntime 。由于调用files解析了配置(并且war块在配置阶段进行了评估),因此无法在以后对其进行修改。

您还可以更改dependencieswar的顺序,它们将是相同的。