Groovy 修复Gradle Artifactory插件发布问题

Groovy 修复Gradle Artifactory插件发布问题,groovy,gradle,artifactory,Groovy,Gradle,Artifactory,我正在与Gradle一起构建一个多项目构建: myapp/ myapp-client/ myapp-shared/ myapp-server/ build.gradle settings.gradle 其中settings.gradle看起来像: include ':myapp-shared' include ':myapp-client' include ':myapp-server' 我已经成功地让Gradle编译我的Groovy源代码,运行单元测

我正在与Gradle一起构建一个多项目构建:

myapp/
    myapp-client/
    myapp-shared/
    myapp-server/
    build.gradle
    settings.gradle
其中
settings.gradle
看起来像:

include ':myapp-shared'
include ':myapp-client'
include ':myapp-server'
我已经成功地让Gradle编译我的Groovy源代码,运行单元测试,生成GroovyDocs,并为所有3个子项目打包二进制和源JAR。其生成调用为:
gradle clean build groovydoc sourcesJar-Pversion=

我现在尝试添加Gradle Artifactory插件,以便:

  • 所有3个子项目都会生成POM;及
  • 所有3个子项目二进制jar、pom源jar都发布到本地运行的Artifactory中;及
  • 每当调用
    gradlebuild
    时,就会执行
    artifactoryPublish
    任务
以下是我的最佳尝试(我完整的
build.gradle
):

当我运行
gradle clean build groovydoc sourcesJar-Pversion=0.1.1
时,会出现以下命令行异常:

FAILURE: Build failed with an exception.

* Where:
Build file 'C:\Users\myuser\sandbox\eclipse\workspace\myapp\build.gradle' line: 14

* What went wrong:
A problem occurred evaluating root project 'myapp'.
> You can't change a configuration which is not in unresolved state!

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 2.589 secs
我的问题:这里发生了什么,我需要做什么(特别是)来修复它并获得Artifactory插件发布?

附加问题:我在两个位置指定版本号(构建调用以及
build.gradle
文件内。我只想通过构建调用指定版本号。我如何配置
artifactoryPublish
(或者更确切地说,gradle Artifactory插件)要接受我从命令行指定的版本?

此处的问题数量:

  • buildscript
    应该是顶级块,而不是在
    allprojects
  • 使用Artifactory时,您不需要指定除Artifactory之外的任何其他存储库(不需要
    mavenCentral()
  • 如果您想使用
    artifactoryPublish
    ,您需要配置Artifactory插件。下面是两个多模块Gradle项目的完整工作示例:和。一些亮点:
  • 您需要应用
    maven
    maven发布
    插件
  • 您需要相应地将生成的工件添加到
    配置
    发布
  • 您需要使用正在使用的Artifactory实例配置插件,提供解决方案和部署存储库名称、凭据(通常仅用于部署),并指定要发布的
    配置
    发布
  • 此处的问题数量:

  • buildscript
    应该是顶级块,而不是在
    allprojects
  • 使用Artifactory时,您不需要指定除Artifactory之外的任何其他存储库(不需要
    mavenCentral()
  • 如果您想使用
    artifactoryPublish
    ,您需要配置Artifactory插件。下面是两个多模块Gradle项目的完整工作示例:和。一些亮点:
  • 您需要应用
    maven
    maven发布
    插件
  • 您需要相应地将生成的工件添加到
    配置
    发布
  • 您需要使用正在使用的Artifactory实例配置插件,提供解决方案和部署存储库名称、凭据(通常仅用于部署),并指定要发布的
    配置
    发布

  • 指向多模块渐变项目示例不工作的链接:-(指向多模块渐变项目示例不工作的链接:-(
    FAILURE: Build failed with an exception.
    
    * Where:
    Build file 'C:\Users\myuser\sandbox\eclipse\workspace\myapp\build.gradle' line: 14
    
    * What went wrong:
    A problem occurred evaluating root project 'myapp'.
    > You can't change a configuration which is not in unresolved state!
    
    * Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
    
    BUILD FAILED
    
    Total time: 2.589 secs