发布于 3年前

build.gradle转换为maven的pom文件

build.gradle文件示例:

repositories {
    mavenCentral()
}
group = 'com.example'
version = '0.0.1-SNAPSHOT'
apply plugin: 'java'
dependencies {
    compile('org.slf4j:slf4j-api')
    testCompile('junit:junit')
}

1、安装gradle的maven插件

此插件会帮助我们实现build.gradle转换为maven的pom文件。

a、在build.gradle添加如下:

apply plugin: 'maven'

b、执行安装

gradle install

执行完maven插件的安装后,在根目录下默认会生成三个子目录,如下:

  • libs:包含了名为${artifactId}-${version}.jar的jar文件
  • poms: 名为pom-default.xml的pom文件
  • tmp/jar: 包含了manifest信息

其中pom文件内容类似于:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
    xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.example</groupId>
  <artifactId>gradle-to-maven</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <dependencies>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

定制maven插件

除了使用默认生成的的jar包名,maven插件也允许对生成的jar名做定制,如

install {
    repositories {
        mavenInstaller {
            pom.version = '0.0.1-maven-SNAPSHOT'
            pom.groupId = 'com.example.sample'
            pom.artifactId = 'gradle-maven-converter'
        }
    }
}

生成的结果:

<groupId>com.example.sample</groupId>
<artifactId>gradle-maven-converter</artifactId>
<version>0.0.1-maven-SNAPSHOT</version>
©2020 edoou.com   京ICP备16001874号-3