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"
      }
   }
}

当应用Javamaven-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

初始化任务取决于包装器任务,以便创建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'
}

Made with ❤️ in Chengdu. Copyright reserved 2019-2022.

蜀ICP备20006366号-1