publish.gradle 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. // 配置生成源码JAR任务
  2. task sourceJar(type: Jar) {
  3. from android.sourceSets.main.java.srcDirs
  4. archiveClassifier.set('sources')
  5. }
  6. publishing {
  7. publications {
  8. maven(MavenPublication) {
  9. groupId project.GROUP_ID
  10. artifactId project.ARTIFACT_ID
  11. version project.VERSION
  12. //依赖 bundleReleaseAar任务,并上传其产出的aar
  13. afterEvaluate { artifact(tasks.getByName("bundleReleaseAar")) }
  14. artifact(sourceJar)
  15. // pom文件中声明依赖,从而传递到使用方
  16. pom.withXml {
  17. def apiSet = new HashSet()
  18. def dependenciesNode = asNode().appendNode('dependencies')
  19. configurations.api.allDependencies.each {
  20. if (it.group != null && (it.name != null && "unspecified" != it.name) && it.version != null) {
  21. println "api " + it.toString()
  22. apiSet.add(it.toString())
  23. def dependencyNode = dependenciesNode.appendNode('dependency')
  24. dependencyNode.appendNode('groupId', it.group)
  25. dependencyNode.appendNode('artifactId', it.name)
  26. dependencyNode.appendNode('version', it.version)
  27. dependencyNode.appendNode('scope', 'api')
  28. }
  29. }
  30. configurations.implementation.allDependencies.each {
  31. if (apiSet.contains(it.toString())) {
  32. return
  33. }
  34. println "implementation " + it.toString()
  35. if (it.group != null && (it.name != null && "unspecified" != it.name) && it.version != null) {
  36. def dependencyNode = dependenciesNode.appendNode('dependency')
  37. dependencyNode.appendNode('groupId', it.group)
  38. dependencyNode.appendNode('artifactId', it.name)
  39. dependencyNode.appendNode('version', it.version)
  40. dependencyNode.appendNode('scope', 'implementation')
  41. }
  42. }
  43. }
  44. }
  45. }
  46. repositories {
  47. maven {
  48. url 'http://8.134.139.102:8085/repository/wenext-android/'
  49. credentials {
  50. username 'admin'
  51. password 'e405f245-3a0e-4de7-8768-c4c62bdea293'
  52. }
  53. allowInsecureProtocol = true//允许 Gradle 使用不安全的协议
  54. }
  55. }
  56. }