Gradle - 部署
Gradle 提供了多种部署构建工件存储库的方法。将工件的签名部署到 Maven 存储库时,您还需要对已发布的 POM 文件进行签名。
Maven 发布插件
默认情况下,maven-publish插件由 Gradle 提供。用于发布gradle脚本。看一下下面的代码。
apply plugin: 'java' apply plugin: 'maven-publish' publishing { publications { mavenJava(MavenPublication) { from components.java } } repositories { maven { url "$buildDir/repo" } } }
当应用Java和maven-publish插件时,有多个发布选项。看一下下面的代码,它将把项目部署到远程存储库中。
apply plugin: 'groovy' apply plugin: 'maven-publish' group 'workshop' version = '1.0.0' publishing { publications { mavenJava(MavenPublication) { from components.java } } repositories { maven { default credentials for a nexus repository manager credentials { username 'admin' password 'admin123' } // url to the releases maven repository url "http://localhost:8081/nexus/content/repositories/releases/" } } }
从 Maven 转换为 Gradle
如果此任务已知所有使用的 Maven 插件,则有一个特殊命令用于将 Apache Maven pom.xml文件转换为 Gradle 构建文件。
在本节中,以下pom.xml maven 配置将转换为 Gradle 项目。
<project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example.app</groupId> <artifactId>example-app</artifactId> <packaging>jar</packaging> <version>1.0.0-SNAPSHOT</version> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> </dependencies> </project>
您可以在命令行上使用以下命令,从而生成以下 Gradle 配置。
C:\> gradle init --type pom
init任务依赖于包装器任务,以便创建 Gradle 包装器。
生成的build.gradle文件看起来与此类似 -
apply plugin: 'java' apply plugin: 'maven' group = 'com.example.app' version = '1.0.0-SNAPSHOT' description = """""" sourceCompatibility = 1.5 targetCompatibility = 1.5 repositories { maven { url "http://repo.maven.apache.org/maven2" } } dependencies { testCompile group: 'junit', name: 'junit', version:'4.11' }