No matching variant of com.hivemq:hivemq-mqtt-client-websocket:1.3.3 was found
digrec opened this issue ยท 6 comments
digrec commented
๐ Bug Report
After updating to Android Studio Hedgehog and AGP 8.2 my project fails to build with Could not resolve com.hivemq:hivemq-mqtt-client-websocket:1.3.3.
and No matching variant of com.hivemq:hivemq-mqtt-client-websocket:1.3.3 was found.
errors.
FAILURE: Build completed with 8 failures.
1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':app:checkDebugAarMetadata'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
> Could not resolve com.hivemq:hivemq-mqtt-client-websocket:1.3.3.
Required by:
project :app
> No matching variant of com.hivemq:hivemq-mqtt-client-websocket:1.3.3 was found. The consumer was configured to find a library for use during runtime, preferably optimized for Android, as well as attribute 'com.android.build.api.attributes.BuildTypeAttr' with value 'debug', attribute 'com.android.build.api.attributes.AgpVersionAttr' with value '8.2.0', attribute 'org.jetbrains.kotlin.platform.type' with value 'androidJvm' but:
- Variant 'apiElements' capability com.hivemq:hivemq-mqtt-client-websocket:1.3.3:
- Incompatible because this component declares a platform for use during compile-time and the consumer needed a library for use during runtime
- Other compatible attributes:
- Doesn't say anything about com.android.build.api.attributes.AgpVersionAttr (required '8.2.0')
- Doesn't say anything about com.android.build.api.attributes.BuildTypeAttr (required 'debug')
- Doesn't say anything about its target Java environment (preferred optimized for Android)
- Doesn't say anything about org.jetbrains.kotlin.platform.type (required 'androidJvm')
- Variant 'enforcedApiElements' capability com.hivemq:hivemq-mqtt-client-websocket-derived-enforced-platform:1.3.3:
- Incompatible because this component declares an enforced platform for use during compile-time and the consumer needed a library for use during runtime
- Other compatible attributes:
- Doesn't say anything about com.android.build.api.attributes.AgpVersionAttr (required '8.2.0')
- Doesn't say anything about com.android.build.api.attributes.BuildTypeAttr (required 'debug')
- Doesn't say anything about its target Java environment (preferred optimized for Android)
- Doesn't say anything about org.jetbrains.kotlin.platform.type (required 'androidJvm')
- Variant 'enforcedRuntimeElements' capability com.hivemq:hivemq-mqtt-client-websocket-derived-enforced-platform:1.3.3 declares a component for use during runtime:
- Incompatible because this component declares an enforced platform and the consumer needed a library
- Other compatible attributes:
- Doesn't say anything about com.android.build.api.attributes.AgpVersionAttr (required '8.2.0')
- Doesn't say anything about com.android.build.api.attributes.BuildTypeAttr (required 'debug')
- Doesn't say anything about its target Java environment (preferred optimized for Android)
- Doesn't say anything about org.jetbrains.kotlin.platform.type (required 'androidJvm')
- Variant 'runtimeElements' capability com.hivemq:hivemq-mqtt-client-websocket:1.3.3 declares a component for use during runtime:
- Incompatible because this component declares a platform and the consumer needed a library
- Other compatible attributes:
- Doesn't say anything about com.android.build.api.attributes.AgpVersionAttr (required '8.2.0')
- Doesn't say anything about com.android.build.api.attributes.BuildTypeAttr (required 'debug')
- Doesn't say anything about its target Java environment (preferred optimized for Android)
- Doesn't say anything about org.jetbrains.kotlin.platform.type (required 'androidJvm')
And 7 more times like this for every other gradle task.
๐ฌ How To Reproduce
- Create a new empty Android project using Android Studio Hedgehog.
- Add
hivemq-mqtt-client
andmqtt-client-websocket
v1.3.3 as dependencies. - Rebuild the project and see the build errors.
Note: this can't be reproduced with AGP 8.1.4!
Code sample
Project build.gradle
plugins {
id 'com.android.application' version '8.2.0' apply false
id 'org.jetbrains.kotlin.android' version '1.9.10' apply false
}
App build.gradle
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
}
android {
namespace 'com.example.mqttclient'
compileSdk 34
defaultConfig {
applicationId "com.example.mqttclient"
minSdk 24
targetSdk 34
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
packaging {
resources.excludes += [
'META-INF/INDEX.LIST',
'META-INF/io.netty.versions.properties',
'DebugProbesKt.bin',
]
}
}
dependencies {
implementation 'androidx.core:core-ktx:1.12.0'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.11.0'
implementation 'com.hivemq:hivemq-mqtt-client:1.3.3'
implementation 'com.hivemq:hivemq-mqtt-client-websocket:1.3.3'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
}
Environment
Android Studio Hedgehog | 2023.1.1
Build #AI-231.9392.1.2311.11076708, built on November 9, 2023
Runtime version: 17.0.7+0-17.0.7b1000.6-10550314 aarch64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 14.2