wupdigital / android-maven-publish Goto Github PK
View Code? Open in Web Editor NEWModification of the standard Maven Publish plugin to be compatible with android-library projects (aar).
License: Apache License 2.0
Modification of the standard Maven Publish plugin to be compatible with android-library projects (aar).
License: Apache License 2.0
Unable to load class 'org.gradle.api.capabilities.Capability'.
Possible causes for this unexpected error include:
I just tried this plugin and found the following issues with Android Gradle 3.0 (not sure if it works correctly with 2.3.3)
api project(':library')
<dependency>
<groupId>project-group</groupId>
<artifactId>library</artifactId>
<version>1.0.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
It should be
<dependency>
<groupId>project-group</groupId>
<artifactId>library</artifactId>
<version>1.0.0-SNAPSHOT</version>
<scope>compile</scope>
<type>aar</type>
</dependency>
implementation group: 'com.android.support', name: 'support-v4', version: project.ext.supportLibVersion
produces
<dependency>
<groupId>com.android.support</groupId>
<artifactId>support-v4</artifactId>
<version>26.1.0</version>
<scope>runtime</scope>
</dependency>
As you can see above the scope is set to runtime, but it should be compile. (also type is missing here too)
see https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope (runtime will not be used for compilation)
Is there any way to add variants and custom attributes in file.module
file generated for gradle-metadata in android library?
How to use this plugin with Kotlin Gradle DSL?
I tried to port Groovy code from docs to Kotlin:
plugins {
id("com.android.library")
id("digital.wup.android-maven-publish") version "3.6.1"
}
publishing {
(publications) {
"mavenAar"(MavenPublication::class) {
from(components["android"])
}
}
}
But got the exception: SoftwareComponentInternal with name 'android' not found.
It seems like android-maven-publish plugin was applied before library plugin.
The plugin can't handle dependency constraints with Gradle 4.6
I have problems in this part of code
publications {
mavenAar(MavenPublication) {
from components.android
artifact javadocsJar
artifact sourcesJar
}
}
Failed to notify project evaluation listener.
Could not get unknown property 'javadocsJar' for object of type org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication.
java.lang.reflect.InvocationTargetException (no error message)
and
Failed to notify project evaluation listener.
Could not get unknown property 'sourcesJar' for object of type org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication.
java.lang.reflect.InvocationTargetException (no error message)
It's a bit difficult to decipher how to exactly structure the project. Could you please provide a sample publication example of both one with variants and one without!
Thanks!
I got the error(in IntelliJ IDEA) after update of my Gradle wrapper to 4.10
Publication with name 'defaultAar' not found.
My build.gradle.kts file is:
plugins {
id("com.android.library")
id("digital.wup.android-maven-publish") version "3.6.2"
}
publishing {
(publications) {
"defaultAar"(MavenPublication::class) {
from(components["android"])
}
}
}
Implement getCapabilities()
method in CompileUsage and RuntimeUsage classes
I have 2 lib modules : library
, library2
build.gradle
in library:
apply plugin: 'com.android.library'
apply plugin: 'digital.wup.android-maven-publish'
android {
compileSdkVersion 26
defaultConfig {
minSdkVersion 14
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
flavorDimensions "runner"
productFlavors {
sit {
dimension "runner"
}
dev {
dimension "runner"
}
uat {
dimension "runner"
}
prd {
dimension "runner"
}
}
}
dependencies {
...
implementation project(':android-library2')
}
apply from: '../publish.gradle'
build.gradle
in library2:
apply plugin: 'com.android.library'
apply plugin: 'digital.wup.android-maven-publish'
android {
compileSdkVersion 26
defaultConfig {
minSdkVersion 14
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
flavorDimensions "runner"
productFlavors {
sit {
dimension "runner"
}
dev {
dimension "runner"
}
uat {
dimension "runner"
}
prd {
dimension "runner"
}
}
}
dependencies {
...
}
apply from: '../publish.gradle'
publish.gradle:
publishing.publications() {
android.libraryVariants.all { variant ->
"maven$project.archivesBaseName${variant.name.capitalize()}Aar"(MavenPublication) {
from components.findByName("android${variant.name.capitalize()}")
groupId 'com.android.saleshelp'
artifactId project.archivesBaseName + "-${variant.name.capitalize()}"
version android.defaultConfig.versionName
}
}
}
publishing.repositories {
mavenLocal()
}
when I run task publish
in library, I got the following error:
* What went wrong:
Could not determine the dependencies of task ':android-library2:publishMavenandroid-library2SitReleaseAarPublicationToMavenLocalRepository'.
> Publishing is not able to resolve a dependency on a project with multiple publications that have different coordinates.
Found the following publications in project ':android-library':
- Maven publication 'mavenandroid-libraryPrdDebugAar' with coordinates com.cestbon.android.saleshelp:android-library-PrdDebug:1.0
- Maven publication 'mavenandroid-libraryPrdReleaseAar' with coordinates com.cestbon.android.saleshelp:android-library-PrdRelease:1.0
- Maven publication 'mavenandroid-libraryDevDebugAar' with coordinates com.cestbon.android.saleshelp:android-library-DevDebug:1.0
- Maven publication 'mavenandroid-libraryDevReleaseAar' with coordinates com.cestbon.android.saleshelp:android-library-DevRelease:1.0
- Maven publication 'mavenandroid-libraryUatDebugAar' with coordinates com.cestbon.android.saleshelp:android-library-UatDebug:1.0
- Maven publication 'mavenandroid-libraryUatReleaseAar' with coordinates com.cestbon.android.saleshelp:android-library-UatRelease:1.0
- Maven publication 'mavenandroid-librarySitDebugAar' with coordinates com.cestbon.android.saleshelp:android-library-SitDebug:1.0
- Maven publication 'mavenandroid-librarySitReleaseAar' with coordinates com.cestbon.android.saleshelp:android-library-SitRelease:1.0
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
If I removed apply from: '../publish.gradle'
in build.gradle
of library2, task :library:publish
can be run successfully. But because of I want to publish library2
independently, so library2
must apply from: '../publish.gradle'
How can I do for this error?
Thanks.
I am working on a library which provides a theme,
A common theme for all apps made by us.
So I want to export values-night as well as values to the aar file.
I can publish my package to github packages and everything is working fine except values and values-night aren't added to aar.
I am having following error / warning when I am assembling the module.
D:\common\common\build\intermediates\res\merged\release\values-night-v8\values-night-v8.xml:10: warn: i
gnoring configuration 'night-v8' for attribute attr/toolbar_text_secondary.
I'm getting this exception on Gradle 4.5:
> Exception thrown while executing model rule: PublishingPlugin.Rules#publishing(ExtensionContainer)
> digital.wup.android_maven_publish.AndroidVariantLibrary$CompileUsage.getDependencyConstraints()Ljava/util/Set;
My gradle looks like this for publishing the library to a private maven repository using artifactory
publishing {
publications {
aar(MavenPublication) {
from components.android
groupId libraryGroupId
version libraryVersion
artifactId libraryArtifactId
artifact("$buildDir/outputs/aar/${artifactId}-release.aar")
}
}
}
artifactory {
contextUrl = repoUrl
publish {
repository {
repoKey = 'libs-release-local'
username = artifactory_username
password = artifactory_password
}
defaults {
publications('aar')
publishArtifacts = true
properties = ['qa.level': 'basic', 'q.os': 'android', 'dev.team': 'core']
publishPom = true
}
}
}
There are 2 issues currently
<packaging>pom</packaging>
instead of <packaging>aar</packaging>
. The dependencies are generated fine.The app implementing the library crashes on runtime due to missing runtime dependencies.
Gradle version: 4.4
I want to upload debug aar to maven local,What can i do.
Hello.
I've tried using it with gradle new BOM support but it produces pom with versions absent from dependencies.
Example:
compile "org.jetbrains.kotlin:kotlin-stdlib"
(version is derived from BOM)
produces this
<dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-stdlib</artifactId> </dependency>
Hello,
I included your plugin into one or our projects. The project contains of one Android Application and five Android Libraries. Now, I would like to upload the libraries to our Maven-Repo.
Main build.gradle
buildscript {
repositories {
jcenter()
google()
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath 'com.vanniktech:gradle-android-junit-jacoco-plugin:0.10.0'
classpath 'io.fabric.tools:gradle:1.24.5'
classpath 'org.ajoberstar:grgit:2.1.0'
classpath 'org.owasp:dependency-check-gradle:3.0.1'
classpath 'io.realm:realm-gradle-plugin:3.3.2'
classpath 'digital.wup:android-maven-publish:3.1.1'
}
}
And the build.gradle
of one of our library modules:
apply plugin: 'com.android.library'
apply plugin: 'com.vanniktech.android.junit.jacoco'
apply plugin: 'org.owasp.dependencycheck'
apply from: '../gradle-src/checkstyle.gradle'
apply from: '../gradle-src/javadoc.gradle'
apply plugin: 'digital.wup.android-maven-publish'
android {
compileSdkVersion 26
buildToolsVersion buildVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
minSdkVersion 21
targetSdkVersion 26
testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner'
def numberOfCommits = countGitCommits()
versionCode 8000 + numberOfCommits
versionName "0.8.$numberOfCommits"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
testOptions {
unitTests.returnDefaultValues = true
}
}
dependencies {
implementation "io.reactivex.rxjava2:rxandroid:$rxAndroidVersion"
implementation "io.reactivex.rxjava2:rxjava:$rxJavaVersion"
implementation "com.android.support:support-compat:$supportLibVersion"
implementation "com.google.dagger:dagger:$daggerVersion"
annotationProcessor "com.google.dagger:dagger-compiler:$daggerVersion"
// Needed for @Generated annotation (missing in Java <= 1.6; therefore, Android)
implementation 'javax.annotation:jsr250-api:1.0'
testImplementation "junit:junit:$junitVersion"
testImplementation "org.mockito:mockito-core:$mockitoVersion"
testImplementation "org.hamcrest:hamcrest-core:$hamcrestVersion"
testImplementation "org.hamcrest:hamcrest-library:$hamcrestVersion"
testImplementation "org.powermock:powermock-module-junit4:$powerMockVersion"
testImplementation "org.powermock:powermock-module-junit4-rule:$powerMockVersion"
testImplementation "org.powermock:powermock-api-mockito:$powerMockVersion"
testImplementation "org.powermock:powermock-classloading-xstream:$powerMockVersion"
androidTestImplementation "com.android.support:support-annotations:$supportLibVersion"
androidTestImplementation "com.android.support.test:runner:$testSupportVersion"
androidTestImplementation "com.android.support.test:rules:$testSupportVersion"
androidTestImplementation "org.hamcrest:hamcrest-library:$hamcrestVersion"
androidTestImplementation "org.mockito:mockito-core:$mockitoVersion"
androidTestImplementation "com.google.dexmaker:dexmaker-mockito:$dexmakerVersion"
androidTestImplementation "com.google.dexmaker:dexmaker:$dexmakerVersion"
}
publishing {
publications {
mavenAar(MavenPublication) {
groupId 'de.mycompany.myapp'
artifactId 'artifactid'
version '1.3.0'
from components.android
}
}
}
publishing {
repositories {
maven {
credentials {
username "myuser"
password "password"
}
url "http://maven.myserver:8081/repository/maven-releases"
}
}
}
But when I sync the project with Android Studio, I am getting the following error:
cannot compare value: java-runtime
and it points to the following line:
from components.android
Am I doing something wrong?
On my machine I have Java JDK 8
installed. I am using gradle 4.1
apply plugin: 'digital.wup.android-maven-publish'
publishing {
publications {
mavenAar(MavenPublication) {
from components.android
}
}
}
When I add code above to my android library project, I got error .
20:22:16.486 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Caused by: com.google.common.collect.Ordering$IncomparableValueException: Cannot compare value: java-runtime
20:22:16.487 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at com.google.common.collect.ExplicitOrdering.rank(ExplicitOrdering.java:46)
20:22:16.487 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at com.google.common.collect.ExplicitOrdering.compare(ExplicitOrdering.java:40)
20:22:16.487 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication$1.compare(DefaultMavenPublication.java:74)
How can I solve this problem ?
Include all attributes of each variant of a C++ component
implement getAttributes()
and getName()
in BaseUsage
Is the case of publishing Android libraries and its javadoc supported?
I have an android project which includes 3 modules ModuleA, ModuleB, ModuleC. ModuleA depends on both ModuleB and ModuleC. I'm trying to publish the ModuleA to a maven repository using android-maven-publish plugin and looks like it is not automatically publishing ModuleB and ModuleC to maven when I run publishToMavenLocal. When I try to use published ModuleA as a dependency in a different project gradle could not resolve ModuleB, ModuleC.
Is there something that I am missing?.
I am using gradle plugin version 3.5.0, gradle version 5.4.1 and mavenPublishVersion 3.6.2.
This is how project's gradle looks like
build.gradle(project)
buildScript {
...
dependencies {
classpath "digital.wup:android-maven-publish:3.6.2"
}
}
allprojects {
apply plugin: "digital.wup.android-maven-publish"
}
and ModuleA's build.gradle
build.gradle(ModuleA)
...
dependencies {
api project(":moduleB")
api project(":moduleC")
}
publishing {
repositories {
...
mavenLocal()
}
publications {
mavenSrcModuleA(MavenPublication) {
from components.android
groupId = "com.example.sdk"
artifactId = "moduleA"
version = "1.0.0"
}
}
}
and ModuleB's build.gradle
build.gradle(ModuleB)
...
publishing {
repositories {
...
mavenLocal()
}
publications {
mavenSrcModuleB(MavenPublication) {
from components.android
groupId = "com.example.sdk"
artifactId = "moduleB"
version = "1.0.0"
}
}
}
and ModuleC's build.gradle
build.gradle(ModuleC)
...
publishing {
repositories {
...
mavenLocal()
}
publications {
mavenSrcModuleC(MavenPublication) {
from components.android
groupId = "com.example.sdk"
artifactId = "moduleC"
version = "1.0.0"
}
}
}
The project in question: magneticflux-/kotlin-livedata-utils
My log:
C:\Users\Mitchell\StudioProjects\kotlin-livedata-utils>gradlew bintrayUpload --stacktrace
> Configure project :
Building version '0.3.3' (value loaded from 'version.properties' file).
> Task :kotlin-livedata-utils:bintrayUpload FAILED
:kotlin-livedata-utils:bintrayUpload - publishing to Bintray
- dry run: false, version: 0.3.3, Maven Central sync: true
- user/org: magneticflux/magneticflux, repository/package: kotlin-livedata-utils/kotlin-livedata-utils
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':kotlin-livedata-utils:bintrayUpload'.
> Could not upload to 'https://api.bintray.com/content/magneticflux/kotlin-livedata-utils/kotlin-livedata-utils/0.3.3/value: com/github/magneticflux/value: kotlin-livedata-utils/value: 0.3.3/value: kotlin-livedata-utils-value: 0.3.3.pom': HTTP/1.1 400 Bad Reque
st [message:Unable to upload files: Maven group, artifact or version defined in the pom file do not match the file path 'value: com/github/magneticflux/value: kotlin-livedata-utils/value: 0.3.3/value: kotlin-livedata-utils-value: 0.3.3.pom']
* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':kotlin-livedata-utils:bintrayUpload'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:317)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:309)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:185)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:97)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$ExecuteTaskAction.execute(DefaultTaskExecutionGraph.java:262)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$ExecuteTaskAction.execute(DefaultTaskExecutionGraph.java:246)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:136)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.execute(DefaultTaskPlanExecutor.java:201)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.executeWithTask(DefaultTaskPlanExecutor.java:192)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.api.GradleException: Could not upload to 'https://api.bintray.com/content/magneticflux/kotlin-livedata-utils/kotlin-livedata-utils/0.3.3/value: com/github/magneticflux/value: kotlin-livedata-utils/value: 0.3.3/value: kotlin-livedata-utils-
value: 0.3.3.pom': HTTP/1.1 400 Bad Request [message:Unable to upload files: Maven group, artifact or version defined in the pom file do not match the file path 'value: com/github/magneticflux/value: kotlin-livedata-utils/value: 0.3.3/value: kotlin-livedata-uti
ls-value: 0.3.3.pom']
at com.jfrog.bintray.gradle.BintrayUploadTask$_bintrayUpload_closure8$_closure36$_closure38$_closure40.doCall(BintrayUploadTask.groovy:400)
at groovyx.net.http.HTTPBuilder$1.handleResponse(HTTPBuilder.java:503)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:222)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:164)
at groovyx.net.http.HTTPBuilder.doRequest(HTTPBuilder.java:515)
at groovyx.net.http.HTTPBuilder.doRequest(HTTPBuilder.java:434)
at groovyx.net.http.HTTPBuilder.request(HTTPBuilder.java:366)
at groovyx.net.http.HTTPBuilder$request.call(Unknown Source)
at com.jfrog.bintray.gradle.BintrayUploadTask$_bintrayUpload_closure8$_closure36.doCall(BintrayUploadTask.groovy:385)
at com.jfrog.bintray.gradle.BintrayUploadTask$_bintrayUpload_closure8.doCall(BintrayUploadTask.groovy:376)
at com.jfrog.bintray.gradle.BintrayUploadTask$_bintrayUpload_closure13.doCall(BintrayUploadTask.groovy:477)
at com.jfrog.bintray.gradle.BintrayUploadTask.bintrayUpload(BintrayUploadTask.groovy:476)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:46)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:794)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:761)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:317)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:309)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:185)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:97)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
... 30 more
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
See https://docs.gradle.org/4.8.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 2s
35 actionable tasks: 3 executed, 32 up-to-date
Patch that causes the issue:
Index: gradle/wrapper/gradle-wrapper.properties
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>windows-1252
===================================================================
--- gradle/wrapper/gradle-wrapper.properties (revision 8bbc009504628fe47f04e171c7309b90deb58bc0)
+++ gradle/wrapper/gradle-wrapper.properties (date 1529945444523)
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-4.7-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.8.1-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Index: build.gradle
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- build.gradle (revision 8bbc009504628fe47f04e171c7309b90deb58bc0)
+++ build.gradle (date 1529945444537)
@@ -15,7 +15,7 @@
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "org.jetbrains.dokka:dokka-android-gradle-plugin:0.9.17"
classpath 'org.junit.platform:junit-platform-gradle-plugin:1.2.0'
- classpath 'digital.wup:android-maven-publish:3.5.1'
+ classpath 'digital.wup:android-maven-publish:3.6.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
I have upgraded my project android build gradle plugin to 4.2.0 and gradle version 6.7.1
from then on I get
Could not determine the dependencies of task
java.lang.NullPointerException (no error message)
I use classpath 'digital.wup:android-maven-publish:3.6.3'
Hello, I have released a version of my .aar before and everything was successful. Now, if I go back to to the commit I made the release from, I get this error.
Cannot get property 'allDependencies' on null object
It comes from the publication line from components.android
publishing {
publications {
aar(MavenPublication) {
from components.android
}
}
}
It works when I specify the artifact like this:
aar(MavenPublication) {
//from components.android
groupId "${artifactProperties.groupId}"
version "${artifactProperties.version}"
artifact("$buildDir/outputs/aar/hmkit-android-release.aar")
pom.withXml {
def dependenciesNode = asNode().appendNode('dependencies')
//Iterate over the compile dependencies (we don't want the test ones), adding a <dependency> node for each
configurations.compile.allDependencies.each {
def dependencyNode = dependenciesNode.appendNode('dependency')
dependencyNode.appendNode('groupId', it.group)
dependencyNode.appendNode('artifactId', it.name)
dependencyNode.appendNode('version', it.version)
}
}
}
But this way the pom file does not have any dependencies.
Why do I get this null object error? Why did it work before and not now?
Im using gradle 4.6 and this release is from an Android projects module.
Off-topic: Why could it be that the dependencies loop is not adding to the pom?
When using the android-maven-publish:3.3.0
version with build-info-extractor-gradle:4.7.1
a NullPointerException
occurs (as in #15):
Caused by: java.lang.NullPointerException: Cannot get property 'allDependencies' on null object
at digital.wup.android_maven_publish.AndroidVariantLibrary$RuntimeUsage.getRuntimeDependencies(AndroidVariantLibrary.groovy:125)
at digital.wup.android_maven_publish.AndroidVariantLibrary$RuntimeUsage.getDependencies(AndroidVariantLibrary.groovy:114)
at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication.from(DefaultMavenPublication.java:195)
at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
at org.gradle.internal.metaobject.CompositeDynamicObject.tryInvokeMethod(CompositeDynamicObject.java:98)
at org.gradle.internal.metaobject.MixInClosurePropertiesAsMethodsDynamicObject.tryInvokeMethod(MixInClosurePropertiesAsMethodsDynamicObject.java:30)
at org.gradle.internal.metaobject.ConfigureDelegate.invokeMethod(ConfigureDelegate.java:57)
at publishing_f2u623pjjtsksb7vx5fy8t9vh$_run_closure2$_closure4$_closure5.doCall(/home/dev/myproject/ops/publishing.gradle:14)
at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
at org.gradle.util.ConfigureUtil.configureTarget(ConfigureUtil.java:160)
at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:106)
at org.gradle.util.ConfigureUtil$1.execute(ConfigureUtil.java:123)
at org.gradle.api.internal.AbstractPolymorphicDomainObjectContainer.create(AbstractPolymorphicDomainObjectContainer.java:61)
at org.gradle.api.internal.PolymorphicDomainObjectContainerConfigureDelegate._configure(PolymorphicDomainObjectContainerConfigureDelegate.java:44)
at org.gradle.internal.metaobject.ConfigureDelegate.invokeMethod(ConfigureDelegate.java:66)
at publishing_f2u623pjjtsksb7vx5fy8t9vh$_run_closure2$_closure4.doCall(/home/dev/myproject/ops/publishing.gradle:13)
at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
at org.gradle.util.ConfigureUtil.configureTarget(ConfigureUtil.java:160)
at org.gradle.util.ConfigureUtil.configureSelf(ConfigureUtil.java:148)
at org.gradle.api.internal.AbstractNamedDomainObjectContainer.configure(AbstractNamedDomainObjectContainer.java:79)
at org.gradle.api.internal.AbstractNamedDomainObjectContainer.configure(AbstractNamedDomainObjectContainer.java:34)
at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:104)
at org.gradle.util.ConfigureUtil$1.execute(ConfigureUtil.java:123)
at org.gradle.api.publish.internal.DefaultPublishingExtension.publications(DefaultPublishingExtension.java:48)
at org.gradle.api.publish.internal.DefaultPublishingExtension_Decorated.publications(Unknown Source)
at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
at org.gradle.internal.metaobject.CompositeDynamicObject.tryInvokeMethod(CompositeDynamicObject.java:98)
at org.gradle.internal.metaobject.MixInClosurePropertiesAsMethodsDynamicObject.tryInvokeMethod(MixInClosurePropertiesAsMethodsDynamicObject.java:30)
at org.gradle.internal.metaobject.ConfigureDelegate.invokeMethod(ConfigureDelegate.java:57)
at publishing_f2u623pjjtsksb7vx5fy8t9vh$_run_closure2.doCall(/home/dev/myproject/ops/publishing.gradle:12)
at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
at org.gradle.util.ConfigureUtil.configureTarget(ConfigureUtil.java:160)
at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:106)
at org.gradle.util.ConfigureUtil$1.execute(ConfigureUtil.java:123)
at org.gradle.internal.ImmutableActionSet$CompositeSet.execute(ImmutableActionSet.java:196)
at org.gradle.internal.MutableActionSet.execute(MutableActionSet.java:35)
at org.gradle.api.internal.plugins.ExtensionsStorage$DeferredConfigurableExtensionHolder.configureNow(ExtensionsStorage.java:225)
at org.gradle.api.internal.plugins.ExtensionsStorage$DeferredConfigurableExtensionHolder.get(ExtensionsStorage.java:204)
at org.gradle.api.internal.plugins.ExtensionsStorage.getAsMap(ExtensionsStorage.java:56)
at org.gradle.api.internal.plugins.DefaultConvention$ExtensionsDynamicObject.getProperties(DefaultConvention.java:286)
at org.gradle.internal.metaobject.CompositeDynamicObject.getProperties(CompositeDynamicObject.java:79)
at org.gradle.api.internal.project.DefaultProject$4.create(DefaultProject.java:1029)
at org.gradle.api.internal.project.DefaultProject$4.create(DefaultProject.java:1027)
at org.gradle.util.SingleMessageLogger.whileDisabled(SingleMessageLogger.java:240)
at org.gradle.api.internal.project.DefaultProject.getProperties(DefaultProject.java:1027)
at org.jfrog.gradle.plugin.artifactory.extractor.GradleArtifactoryClientConfigUpdater.fillProperties(GradleArtifactoryClientConfigUpdater.java:141)
at org.jfrog.gradle.plugin.artifactory.extractor.GradleArtifactoryClientConfigUpdater.update(GradleArtifactoryClientConfigUpdater.java:61)
at org.jfrog.gradle.plugin.artifactory.extractor.GradleArtifactoryClientConfigUpdater$update.call(Unknown Source)
at org.jfrog.gradle.plugin.artifactory.extractor.listener.ProjectsEvaluatedBuildListener.evaluate(ProjectsEvaluatedBuildListener.groovy:56)
at org.jfrog.gradle.plugin.artifactory.extractor.listener.ProjectsEvaluatedBuildListener$_afterEvaluate_closure1.doCall(ProjectsEvaluatedBuildListener.groovy:44)
at org.jfrog.gradle.plugin.artifactory.extractor.listener.ProjectsEvaluatedBuildListener.afterEvaluate(ProjectsEvaluatedBuildListener.groovy:43)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
at org.gradle.internal.event.DefaultListenerManager$ListenerDetails.dispatch(DefaultListenerManager.java:370)
at org.gradle.internal.event.DefaultListenerManager$ListenerDetails.dispatch(DefaultListenerManager.java:352)
at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:58)
Downgrading build-info-extractor-gradle
to 4.6.2
does not crash, but nothing gets published when running artifactoryPublish
.
If my project only pure Java (no Res )
can build pure jar & publish ?
THX
Gradle 4.8
Android build tools 3.1.3
Gradle fails with the following exception:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':framework:kodein-di-framework-android:generateMetadataFileForKodeinPublication'.
> Could not find method getByName() for arguments [releaseRuntimeElements, [], []] on configuration container of type org.gradle.api.internal.artifacts.configurations.DefaultConfigurationContainer.
* Try:
Run with --debug option to get more log output. Run with --scan to get full insights.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':framework:kodein-di-framework-android:generateMetadataFileForKodeinPublication'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:317)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:309)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:185)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:97)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$ExecuteTaskAction.execute(DefaultTaskExecutionGraph.java:262)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$ExecuteTaskAction.execute(DefaultTaskExecutionGraph.java:246)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:136)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.execute(DefaultTaskPlanExecutor.java:201)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.executeWithTask(DefaultTaskPlanExecutor.java:192)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.internal.metaobject.AbstractDynamicObject$CustomMessageMissingMethodException: Could not find method getByName() for arguments [releaseRuntimeElements, [], []] on configuration container of type org.gradle.api.internal.artifacts.configurations.DefaultConfigurationContainer.
at org.gradle.internal.metaobject.AbstractDynamicObject.methodMissingException(AbstractDynamicObject.java:179)
at org.gradle.internal.metaobject.AbstractDynamicObject.invokeMethod(AbstractDynamicObject.java:164)
at org.gradle.api.internal.artifacts.configurations.DefaultConfigurationContainer_Decorated.invokeMethod(Unknown Source)
at digital.wup.android_maven_publish.AndroidVariantLibrary$RuntimeUsage.getCapabilities(AndroidVariantLibrary.groovy:164)
at org.gradle.api.publish.internal.ModuleMetadataFileGenerator.writeCapabilities(ModuleMetadataFileGenerator.java:461)
at org.gradle.api.publish.internal.ModuleMetadataFileGenerator.writeVariantHostedInThisModule(ModuleMetadataFileGenerator.java:289)
at org.gradle.api.publish.internal.ModuleMetadataFileGenerator.writeVariants(ModuleMetadataFileGenerator.java:195)
at org.gradle.api.publish.internal.ModuleMetadataFileGenerator.writeComponentWithVariants(ModuleMetadataFileGenerator.java:129)
at org.gradle.api.publish.internal.ModuleMetadataFileGenerator.generateTo(ModuleMetadataFileGenerator.java:98)
at org.gradle.api.publish.tasks.GenerateModuleMetadata.run(GenerateModuleMetadata.java:165)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:46)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:794)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:761)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:317)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:309)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:185)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:97)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
... 30 more
I use Gradle 4.5 and digital.wup:android-maven-publish:3.3.0
When I add description, it doesn't work. (It worked earlier, when we didn't use digital.wup plugin).
publishing {
publications {
mavenCustom(MavenPublication) {
groupId 'com.our.lib'
artifactId calculateArtifact(project)
artifact sourceJar
version libVersion
from components.android
pom.withXml {
asNode().appendNode('description', "Built on commit: ")
}
}
}
}
In resulting pom.xmls there is no description :-(
I just tried upgrading Kotlin to the latest version (1.4.30) in a couple of my Android library projects which use this plugin and I'm seeing the publish
and publishToMavenLocal
Gradle tasks are failing with an error message as follows:
Invalid publication 'QuranSDK': multiple artifacts with the identical extension and classifier ('aar', 'null').
You can see this error if you clone the upgrade-kotlin branch of the quran-sdk GitHub repository and run the publishToMavenLocal
Gradle task.
java.lang.AbstractMethodError: digital.wup.android_maven_publish.AndroidVariantLibrary$CompileUsage.getGlobalExcludes()Ljava/util/Set;
at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication.populateFromComponent(DefaultMavenPublication.java:246)
at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication.getPublishableArtifacts(DefaultMavenPublication.java:357)
at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication_Decorated.getPublishableArtifacts(Unknown Source)
at org.gradle.api.publish.maven.tasks.AbstractPublishToMaven$1.call(AbstractPublishToMaven.java:46)
at org.gradle.api.publish.maven.tasks.AbstractPublishToMaven$1.call(AbstractPublishToMaven.java:43)
at org.gradle.util.GUtil.uncheckedCall(GUtil.java:458)
at org.gradle.api.internal.file.collections.BuildDependenciesOnlyFileCollectionResolveContext.add(BuildDependenciesOnlyFileCollectionResolveContext.java:73)
at org.gradle.api.internal.file.collections.BuildDependenciesOnlyFileCollectionResolveContext.add(BuildDependenciesOnlyFileCollectionResolveContext.java:75)
at org.gradle.api.internal.tasks.TaskPropertyFileCollection.visitContents(TaskPropertyFileCollection.java:53)
at org.gradle.api.internal.file.CompositeFileCollection.visitDependencies(CompositeFileCollection.java:187)
at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext$TaskGraphImpl.getNodeValues(CachingTaskDependencyResolveContext.java:89)
at org.gradle.internal.graph.CachingDirectedGraphWalker$GraphWithEmpyEdges.getNodeValues(CachingDirectedGraphWalker.java:211)
at org.gradle.internal.graph.CachingDirectedGraphWalker.doSearch(CachingDirectedGraphWalker.java:121)
at org.gradle.internal.graph.CachingDirectedGraphWalker.findValues(CachingDirectedGraphWalker.java:73)
at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext.doGetDependencies(CachingTaskDependencyResolveContext.java:76)
at org.gradle.api.internal.tasks.CachingTaskDependencyResolveContext.getDependencies(CachingTaskDependencyResolveContext.java:60)
[...]
This seems pretty straight forward, but apparently I'm not understanding something or am missing something. I've added the plugin to my android library and tried to test by publishing to maven local and am getting the following error.
Could not get unknown property 'android' for SoftwareComponentInternal set of type org.gradle.api.internal.component.DefaultSoftwareComponentContainer.
My build.gradle file has the following in it.
publishing.publications {
mavenAar(MavenPublication) {
from components.android
}
}
Thanks in advance for any advice or suggestions.
I have this exception when trying to use components.androidDebug or components.androidRelease with Gradle 4.2.1 and AGP 3.0.0
I am trying to configure the plugin, but I get these errors with this:
publications {
mavenAar(MavenPublication) {
from components.android
}
}
Exception thrown while executing model rule: PublishingPlugin.Rules#publishing(ExtensionContainer)
Cannot compare value: java-runtime
and another similar error with this:
publications {
android.libraryVariants.all { variant ->
"maven${variant.name.capitalize()}Aar"(MavenPublication) {
from components.findByName("android${variant.name.capitalize()}")
groupId 'digital.wup.test-publish'
artifactId 'test-publish'
version "1.0.0-${variant.name}"
}
}
}
Exception thrown while executing model rule: PublishingPlugin.Rules#publishing(ExtensionContainer)
Cannot compare value: java-api
Additional info:
Gradle: 4.1
classpath "com.android.tools.build:gradle:3.0.1"
classpath "digital.wup:android-maven-publish:3.1.1"
Trace:
* Exception is:
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':chegg-sdk'.
at org.gradle.execution.TaskNameResolver.discoverTasks(TaskNameResolver.java:100)
at org.gradle.execution.TaskNameResolver.selectWithName(TaskNameResolver.java:60)
at org.gradle.execution.TaskSelector.getSelection(TaskSelector.java:103)
at org.gradle.execution.TaskSelector.getSelection(TaskSelector.java:81)
at org.gradle.execution.commandline.CommandLineTaskParser.parseTasks(CommandLineTaskParser.java:42)
at org.gradle.execution.TaskNameResolvingBuildConfigurationAction.configure(TaskNameResolvingBuildConfigurationAction.java:44)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$000(DefaultBuildConfigurationActionExecuter.java:25)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter$1.proceed(DefaultBuildConfigurationActionExecuter.java:54)
at org.gradle.execution.DefaultTasksBuildExecutionAction.configure(DefaultTasksBuildExecutionAction.java:44)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$000(DefaultBuildConfigurationActionExecuter.java:25)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter$1.proceed(DefaultBuildConfigurationActionExecuter.java:54)
at org.gradle.execution.ExcludedTaskFilteringBuildConfigurationAction.configure(ExcludedTaskFilteringBuildConfigurationAction.java:47)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.select(DefaultBuildConfigurationActionExecuter.java:36)
at org.gradle.initialization.DefaultGradleLauncher$CalculateTaskGraph.run(DefaultGradleLauncher.java:265)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
at org.gradle.initialization.DefaultGradleLauncher.constructTaskGraph(DefaultGradleLauncher.java:173)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:128)
at org.gradle.initialization.DefaultGradleLauncher.executeTasks(DefaultGradleLauncher.java:107)
at org.gradle.internal.invocation.GradleBuildController$1.call(GradleBuildController.java:78)
at org.gradle.internal.invocation.GradleBuildController$1.call(GradleBuildController.java:75)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:152)
at org.gradle.internal.invocation.GradleBuildController.doBuild(GradleBuildController.java:100)
at org.gradle.internal.invocation.GradleBuildController.run(GradleBuildController.java:75)
at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run(ValidatingBuildActionRunner.java:32)
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$1.run(RunAsBuildOperationBuildActionRunner.java:43)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:40)
at org.gradle.tooling.internal.provider.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:51)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:45)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:29)
at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:39)
at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:25)
at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:71)
at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:45)
at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:51)
at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:32)
at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:36)
at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:25)
at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:43)
at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:29)
at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:64)
at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:29)
at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:55)
at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:42)
at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:58)
at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:33)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:62)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:82)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:297)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.model.internal.core.ModelRuleExecutionException: Exception thrown while executing model rule: PublishingPlugin.Rules#publishing(ExtensionContainer)
at org.gradle.model.internal.registry.DefaultModelRegistry.fireAction(DefaultModelRegistry.java:490)
at org.gradle.model.internal.registry.DefaultModelRegistry.access$700(DefaultModelRegistry.java:71)
at org.gradle.model.internal.registry.DefaultModelRegistry$RunModelAction.apply(DefaultModelRegistry.java:1184)
at org.gradle.model.internal.registry.DefaultModelRegistry.transitionTo(DefaultModelRegistry.java:390)
at org.gradle.model.internal.registry.DefaultModelRegistry.transition(DefaultModelRegistry.java:469)
at org.gradle.model.internal.registry.DefaultModelRegistry.atStateOrMaybeLater(DefaultModelRegistry.java:233)
at org.gradle.model.internal.registry.DefaultModelRegistry.atStateOrLater(DefaultModelRegistry.java:220)
at org.gradle.api.internal.tasks.DefaultTaskContainer.discoverTasks(DefaultTaskContainer.java:226)
at org.gradle.execution.TaskNameResolver.discoverTasks(TaskNameResolver.java:98)
... 83 more
Caused by: com.google.common.collect.Ordering$IncomparableValueException: Cannot compare value: java-runtime
at com.google.common.collect.ExplicitOrdering.rank(ExplicitOrdering.java:46)
at com.google.common.collect.ExplicitOrdering.compare(ExplicitOrdering.java:40)
at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication$1.compare(DefaultMavenPublication.java:74)
at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication$1.compare(DefaultMavenPublication.java:70)
at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication.getSortedUsageContexts(DefaultMavenPublication.java:146)
at org.gradle.api.publish.maven.internal.publication.DefaultMavenPublication.from(DefaultMavenPublication.java:123)
at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
at org.gradle.internal.metaobject.CompositeDynamicObject.tryInvokeMethod(CompositeDynamicObject.java:98)
at org.gradle.internal.metaobject.MixInClosurePropertiesAsMethodsDynamicObject.tryInvokeMethod(MixInClosurePropertiesAsMethodsDynamicObject.java:30)
at org.gradle.internal.metaobject.ConfigureDelegate.invokeMethod(ConfigureDelegate.java:59)
at build_el0yhq8rby0szlc9mxm9gsbup$_run_closure1$_closure5$_closure15$_closure16.doCall(/Users/gavriel/work/android-chegg-sdk/build.gradle:113)
at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
at org.gradle.util.ConfigureUtil.configureTarget(ConfigureUtil.java:160)
at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:106)
at org.gradle.util.ConfigureUtil$1.execute(ConfigureUtil.java:123)
at org.gradle.api.internal.AbstractPolymorphicDomainObjectContainer.create(AbstractPolymorphicDomainObjectContainer.java:61)
at org.gradle.api.internal.PolymorphicDomainObjectContainerConfigureDelegate._configure(PolymorphicDomainObjectContainerConfigureDelegate.java:44)
at org.gradle.internal.metaobject.ConfigureDelegate.invokeMethod(ConfigureDelegate.java:68)
at org.gradle.internal.metaobject.BeanDynamicObject$GroovyObjectAdapter.invokeOpaqueMethod(BeanDynamicObject.java:579)
at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:506)
at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
at org.gradle.internal.metaobject.ConfigureDelegate.invokeMethod(ConfigureDelegate.java:80)
at build_el0yhq8rby0szlc9mxm9gsbup$_run_closure1$_closure5$_closure15.doCall(/Users/gavriel/work/android-chegg-sdk/build.gradle:105)
at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
at org.gradle.util.ConfigureUtil.configureTarget(ConfigureUtil.java:160)
at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:106)
at org.gradle.util.ConfigureUtil$1.execute(ConfigureUtil.java:123)
at org.gradle.api.internal.DefaultDomainObjectCollection.all(DefaultDomainObjectCollection.java:136)
at org.gradle.api.internal.DefaultDomainObjectCollection.all(DefaultDomainObjectCollection.java:154)
at org.gradle.api.DomainObjectCollection$all$0.call(Unknown Source)
at build_el0yhq8rby0szlc9mxm9gsbup$_run_closure1$_closure5.doCall(/Users/gavriel/work/android-chegg-sdk/build.gradle:102)
at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
at org.gradle.util.ConfigureUtil.configureTarget(ConfigureUtil.java:160)
at org.gradle.util.ConfigureUtil.configureSelf(ConfigureUtil.java:148)
at org.gradle.api.internal.AbstractNamedDomainObjectContainer.configure(AbstractNamedDomainObjectContainer.java:79)
at org.gradle.api.internal.AbstractNamedDomainObjectContainer.configure(AbstractNamedDomainObjectContainer.java:34)
at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:104)
at org.gradle.util.ConfigureUtil$1.execute(ConfigureUtil.java:123)
at org.gradle.api.publish.internal.DefaultPublishingExtension.publications(DefaultPublishingExtension.java:48)
at org.gradle.api.publish.internal.DefaultPublishingExtension_Decorated.publications(Unknown Source)
at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:479)
at org.gradle.internal.metaobject.BeanDynamicObject.tryInvokeMethod(BeanDynamicObject.java:191)
at org.gradle.internal.metaobject.CompositeDynamicObject.tryInvokeMethod(CompositeDynamicObject.java:98)
at org.gradle.internal.metaobject.MixInClosurePropertiesAsMethodsDynamicObject.tryInvokeMethod(MixInClosurePropertiesAsMethodsDynamicObject.java:30)
at org.gradle.internal.metaobject.ConfigureDelegate.invokeMethod(ConfigureDelegate.java:59)
at build_1gvzlm552q710qzynu4eozjvu$_run_closure5.doCall(/Users/gavriel/work/android-chegg-sdk/chegg-sdk/build.gradle:205)
at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:71)
at org.gradle.util.ConfigureUtil.configureTarget(ConfigureUtil.java:160)
at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:106)
at org.gradle.util.ConfigureUtil$1.execute(ConfigureUtil.java:123)
at org.gradle.internal.ImmutableActionSet$CompositeSet.execute(ImmutableActionSet.java:196)
at org.gradle.internal.MutableActionSet.execute(MutableActionSet.java:35)
at org.gradle.api.internal.plugins.ExtensionsStorage$DeferredConfigurableExtensionHolder.configureNow(ExtensionsStorage.java:211)
at org.gradle.api.internal.plugins.ExtensionsStorage$DeferredConfigurableExtensionHolder.get(ExtensionsStorage.java:190)
at org.gradle.api.internal.plugins.ExtensionsStorage.getByType(ExtensionsStorage.java:78)
at org.gradle.api.internal.plugins.DefaultConvention.getByType(DefaultConvention.java:172)
at org.gradle.api.internal.plugins.DefaultConvention.getByType(DefaultConvention.java:167)
at org.gradle.api.publish.plugins.PublishingPlugin$Rules.publishing(PublishingPlugin.java:79)
at org.gradle.model.internal.method.WeaklyTypeReferencingMethod.invoke(WeaklyTypeReferencingMethod.java:100)
at org.gradle.model.internal.inspect.DefaultModelRuleInvoker.invoke(DefaultModelRuleInvoker.java:36)
at org.gradle.model.internal.inspect.UnmanagedModelCreationRuleExtractor$UnmanagedElementCreationAction.execute(UnmanagedModelCreationRuleExtractor.java:77)
at org.gradle.model.internal.inspect.ModelRuleExtractor$DefaultExtractedRuleSource$ContextualizedModelAction.execute(ModelRuleExtractor.java:515)
at org.gradle.model.internal.registry.DefaultModelRegistry$4.run(DefaultModelRegistry.java:485)
at org.gradle.model.internal.registry.RuleContext.run(RuleContext.java:42)
at org.gradle.model.internal.registry.DefaultModelRegistry.fireAction(DefaultModelRegistry.java:482)
... 91 more
Currently only the projects aar files are uploaded to maven. Adding support for publishing apk's as well, would be a great improvement.
I recently upgraded Android Studio to 3.5 along with the Android Gradle Plugin to 3.5 and Gradle Wrapper to 5.4.1 and the libraries .aar files are no longer generated, only pom files remain
Dear Sir
Sorry for my poor English & knowledge
Do you can create a full Android Demo Project ?
THX
Not working with Gradle 4.2.
FAILURE: No such property: FOR_COMPILE for class: org.gradle.api.attributes.Usage
(Using android-maven-publish version 2.0.0)
Gradle 4 has been out a few weeks now and Gradle 4.1 shipped just now.
Would be nice to see this plugin add support by the time the android gradle plugin 3.0 version hits stable as it will require gradle 4.1 as a minimum version.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.