Gradle 为什么我需要配置uploadArchives和artifactoryPublish来发布构建归档文件?

Gradle 为什么我需要配置uploadArchives和artifactoryPublish来发布构建归档文件?,gradle,build.gradle,artifactory,gradle-release-plugin,Gradle,Build.gradle,Artifactory,Gradle Release Plugin,我有一个lib.zip和myApp.war需要发布到artifactory。 最初,我从artifactoryPublish开始,希望在运行时 /gradlew clean release,war和zip将发布到artifactory。但我只注意到战争被上传了。我必须在build.gradle中添加include this additional以获得zip和war上传 afterReleaseBuild.dependsOn上载存档文件。为什么我两者都需要 如果在ReleaseBuild.depe

我有一个
lib.zip
myApp.war
需要发布到
artifactory
。 最初,我从
artifactoryPublish
开始,希望在运行时
/gradlew clean release
,war和zip将发布到artifactory。但我只注意到战争被上传了。我必须在build.gradle中添加include this additional以获得zip和war上传

afterReleaseBuild.dependsOn上载存档文件
。为什么我两者都需要

如果在ReleaseBuild.dependsOn artifactoryPublish之后删除
,则不会向artifactory上传/发布任何内容

这是我的身材,格雷德尔

buildscript {
    repositories {
        jcenter()
        mavenLocal()
    }
    dependencies {
        classpath "org.jfrog.buildinfo:build-info-extractor-gradle:+" 
        classpath 'net.researchgate:gradle-release:2.+'    
    }
}


allprojects {
    apply plugin: "com.jfrog.artifactory"   
    apply plugin: 'net.researchgate.release'

apply plugin: "java"
apply plugin: "maven"
apply plugin: "war"

group 'com.example.services'

sourceCompatibility = '1.7'
targetCompatibility = '1.7'

war {
    archiveName = "myApp.war"
}

task wrapper(type: Wrapper) {
    gradleVersion = '2.11'
}

task buildAssets(type: Zip) {

    baseName = 'lib'
    version = null
    from('libs/') {  
            include '**/*.jar'
}

assemble.dependsOn(buildAssets)

artifacts {
    archives buildAssets
}

release {
    git {
        requireBranch = '' 
    }
}

afterReleaseBuild.dependsOn uploadArchives
afterReleaseBuild.dependsOn artifactoryPublish

artifactory {
    contextUrl = "http://myartifatoryurl"
    publish {
        repository {
            repoKey = 'libs'
            maven = true
            username = "foo"
            password = "bar"
        }
        defaults {
            publishConfigs ('archives')
        }
    }
    resolve {
        repository {
            repoKey = 'releases'
            maven = true
            username = 'foo'
            password = 'bar'
        }
    }
}

//rest of dependencies here 

你能提供完整的构建脚本吗
deployZip
和applying Artifactory插件丢失。没有deployZip。那是个打字错误。我现在更正了它另一件我看不到的事情是
artifactory{}
闭包。除此之外,它还指定了要上载的工件配置。@JBaruch:我编辑了这篇文章以包含
artifactory
closurehm。如果只运行
buildartifactorypublish
,会发生什么情况?能否提供完整的构建脚本
deployZip
和applying Artifactory插件丢失。没有deployZip。那是个打字错误。我现在更正了它另一件我看不到的事情是
artifactory{}
闭包。除此之外,它还指定了要上载的工件配置。@JBaruch:我编辑了这篇文章以包含
artifactory
closurehm。如果只运行
buildartifactorypublish
,会发生什么情况?