概述
如题,Artifactory在打包发布到本地仓库到时候,生成的pom文件可能会不包含dependencies
。
可以手动查找、添加build.gradle
中包含的dependencies
到最终生成到pom
文件。
添加步骤:
使用
implementation
增加编译是需要导入的外部引用:dependencies { implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.60' }
修改上传发布的
gradle
代码:publishing { publications { aar(MavenPublication) { groupId = '{your_group_id}' artifactId = '{your_artifact_id}' version = '{your_artifact_version}' .. pom.withXml { def dependenciesNode = asNode().appendNode('dependencies') configurations.implementation.allDependencies.withType(ModuleDependency) { ModuleDependency dp -> if (dp.version != "unspecified") { // 过滤项目内library引用 def dependencyNode = dependenciesNode.appendNode('dependency') dependencyNode.appendNode('groupId', dp.group) dependencyNode.appendNode('artifactId', dp.name) dependencyNode.appendNode('version', dp.version) // for exclusions if (dp.excludeRules.size() > 0) { def exclusions = dependencyNode.appendNode('exclusions') dp.excludeRules.each { ExcludeRule ex -> def exclusion = exclusions.appendNode('exclusion') exclusion.appendNode('groupId', ex.group) exclusion.appendNode('artifactId', ex.module) } } } } } } } }
调整完成后,重新打包发布,生成的
pom
文件就会包含项目引用。<dependencies> <dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-stdlib-jdk7</artifactId> <version>1.2.60</version> </dependency> </dependencies>
相关链接:
- Gradle Artifactory Plugin
- Android library dependencies missing from POM with Gradle
最后
以上就是孤独小懒虫为你收集整理的Artifactory打包发布到本地仓库,生成的pom文件dependencies丢失的全部内容,希望文章能够帮你解决Artifactory打包发布到本地仓库,生成的pom文件dependencies丢失所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复