build.gradle转换为maven的pom文件

时间:2022-06-01 20:50:30

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>