发布扩展

配置如何“发布”项目的不同组件。

特性

财产描述
publications

该项目的出版物。

repositories

可能要发布到的存储库的容器。

方法

方法描述
publications(configure)

配置该项​​目的发布。

repositories(configure)

配置要发布到的可能存储库的容器。

脚本块

无脚本块

物业详情

PublicationContainer publications(只读)

该项目的出版物。

请参阅PublishingExtension.publications(org.gradle.api.Action)获取更多信息。

RepositoryHandler repositories(只读)

可能要发布到的存储库的容器。

请参阅PublishingExtension.repositories(org.gradle.api.Action)获取更多信息。

方法详情

void publications(配置)Action<? super PublicationContainer>

配置该项​​目的发布。

出版物容器定义项目的传出出版物。也就是说,构建项目所产生的事物的可消耗表示。发布的一个示例是 Ivy 模块(即ivy.xml和工件)或 Maven 项目(即pom.xml和工件)。

实际的发布实现和创建它们的能力是由不同的插件提供的。 “发布”插件本身不提供任何发布类型。例如,假设“maven-publish”插件提供了一种MavenPublication类型,您可以创建一个发布,例如:

plugins {
    id 'maven-publish'
}

publishing {
  publications {
    myPublicationName(MavenPublication) {
      // Configure the publication here
    }
  }
}

请参阅IvyPublicationMavenPublication了解有关以这些特定格式发布的更多信息。

void repositories(配置)Action<? super RepositoryHandler>

配置要发布到的可能存储库的容器。

plugins {
    id 'publishing'
}

publishing {
  repositories {
    // Create an ivy publication destination named “releases”
    ivy {
      name "releases"
      url "http://my.org/ivy-repos/releases"
    }
  }
}

repositories块由 提供支持RepositoryHandler,该 DSL 与用于声明要从中使用依赖项的存储库的 DSL 相同。但是,可由存储库处理程序创建的某些类型的存储库对于发布无效,例如RepositoryHandler.mavenCentral().

此时,只有ivy()工厂方法创建的存储库才起作用。请参阅IvyPublication 参考资料 了解如何使用它来发布到 Ivy 存储库。