用Maven包装Gradle项目

2020年12月1日 100点热度 0条评论

我想包装一个现有的gradle项目(build.gradle),使其也具有pom.xml文件,以便在调用maven时将调用以下gradle任务:

  • 'maven install'->调用'gradle build'
  • 'maven clean'->调用'gradle clean'
  • 'maven clean install -DskipTests'->调用'gradle clean build -x tests'
  • 所以我的问题是:

    有没有一种方法可以创建pom.xml,我可以对其进行自定义(并覆盖)“安装”,“清洁”功能?另外,我是否可以访问传递给Maven的标志,以便可以将它们重写为要传递给Gradle的标志?

    最终目标是将该项目包含在一个较大的多项目中,该项目中的所有项目均基于Maven,我们可以根据Maven命令自动执行所有操作。

    解决方案如下:

    如果build.gradle不太复杂,我将其重写为pom。如果您不想这样做,可以仔细看看您提到的命令:

  • AFAIK,mvn cleangradle clean相同,因此无需担心。
  • 在启动gradle build时调用mvn install可能可以通过使用gradle-maven-plugin(https://github.com/LendingClub/gradle-maven-plugin)实现。
  • skipTests参数发送到gradle可能也可以通过gradle-maven-plugin实现。