`gradle install` 如何生成 `pom.xml` 文件
Posted
技术标签:
【中文标题】`gradle install` 如何生成 `pom.xml` 文件【英文标题】:How does `gradle install` generate the `pom.xml` files 【发布时间】:2019-10-13 04:57:04 【问题描述】:当我运行gradle install
时,它会在每个子项目中生成漂亮的pom.xml
文件。
在哪里可以看到实现该功能的源代码?
根据Maven plugin documentation,Upload 任务有一些东西,但它的文档和源代码没有产生任何具体内容。
【问题讨论】:
【参考方案1】:您可以将gradle-maven-VERSION.jar
添加到您的依赖项中并自己调试插件。相应的源代码位于您的 gradle 安装中,或者在 github 上:https://github.com/gradle/gradle/tree/master/subprojects/maven/src/main/java/org/gradle/api/publication/maven/internal
为了让您领先一步:大部分代码位于 DefaultMavenPom
类中。
它是在DefaultMavenPomFactory.create()
中创建的,带有一些虚拟值:
MavenProject.EMPTY_PROJECT_GROUP_ID
MavenProject.EMPTY_PROJECT_ARTIFACT_ID
MavenProject.EMPTY_PROJECT_VERSION
然后,AbstractMavenResolver.publish(IvyModulePublishMetadata moduleVersion)
被调用,
其中,除其他外:
DefaultArtifactPom.assignArtifactValuesToPom()
中的实际工件填写基本pom数据
填写依赖项-它们用DefaultMavenPom.getGeneratedDependencies()
填写
写入生成的文件
【讨论】:
以上是关于`gradle install` 如何生成 `pom.xml` 文件的主要内容,如果未能解决你的问题,请参考以下文章
如何让我的 gradle 测试任务为不在 maven Central 上的库使用 python pip install?