publishing { // Repositories *to* which Gradle can publish artifacts repositories { RepositoryHandler handler -> handler.mavenLocal() maven { url "$buildDir/repo" // change to point to your repo, e.g. http://my.org/repo } } publications { PublicationContainer publication -> // Creates a Maven publication called "myPublication". maven(MavenPublication) { groupId 'guru.core.consent' artifactId 'GuruConsent' version '1.1.0' // Your package version // artifact publishArtifact //Example: *./target/myJavaClasses.jar* // artifact "build/outputs/aar/aar-test-release.aar"//aar包的目录 afterEvaluate { artifact(tasks.getByName("bundleReleaseAar")) } // 方式一:生成aar包 //带上依赖 ,否则会报错 pom.withXml { def dependenciesNode = asNode().appendNode('dependencies') def scopes = [] if (configurations.hasProperty("api")) { scopes.add(configurations.api) } if (configurations.hasProperty("implementation")) { scopes.add(configurations.implementation) } if (configurations.hasProperty("debugImplementation")) { scopes.add(configurations.debugImplementation) } if (configurations.hasProperty("releaseImplementation")) { scopes.add(configurations.releaseImplementation) } // if (project.ext.targetType != "jar") { // scopes.add(configurations.provided) // } scopes.each { scope -> scope.allDependencies.each { if (it instanceof ModuleDependency) { boolean isTransitive = ((ModuleDependency) it).transitive if (!isTransitive) { println "<<<< not transitive dependency: [${it.group}, ${it.name}, ${it.version}]" return } } if (it.group == "${project.rootProject.name}.libs" || it.version == 'unspecified') { return } if (it.group && it.name && it.version) { def dependencyNode = dependenciesNode.appendNode('dependency') dependencyNode.appendNode('groupId', it.group) dependencyNode.appendNode('artifactId', it.name) dependencyNode.appendNode('version', it.version) dependencyNode.appendNode('scope', scope.name) } } } } } } }