google / google/play-services-plugins
strict-version-matcher-plugin crashed with kotlin-compiler-embeddable dependency
- Dominant language
- Kotlin
- Stars
- 526
- Forks
- 167
- Avg merge
- 7d 21h
- Merged PRs (30d)
- 2
Description
```
java.lang.ArrayIndexOutOfBoundsException: 1
at com.google.android.gms.dependencies.DependencyInspector.registerDependencies(DependencyInspector.java:122)
at com.google.android.gms.dependencies.DependencyInspector.afterResolve(DependencyInspector.java:181)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
```
Exception in source https://github.com/google/play-services-plugins/blob/c00d2dba59b6ea5fa2702425286c27c754a37ce4/strict-version-matcher-plugin/src/main/java/com/google/android/gms/dependencies/DependencyInspector.java#L118
```java
String depFromString = ("" + depResult.getFrom().getId().getDisplayName());
if (depFromString.startsWith("project ")) {
// TODO(paulrashidi): Figure out if a third level dependency shows depFromString.
// In a project with other project dependencies the dep
// string will be "project :module1"
String depName = depFromString.split(":")[1];
// Register the dep from another module in the project.
fromDep = ArtifactVersion.Companion.fromGradleRef(
GRADLE_PROJECT + ":" + projectName + "-" + taskName + "-" + depName + ":0.0.0");
} else {
try {
fromDep = ArtifactVersion.Companion.fromGradleRef(depFromString);
} catch (IllegalArgumentException iae) {
logger.info("Skipping misunderstood FROM dep string: " + depFromString);
continue;
}
}
}
```
In task kotlinCompilerClasspath this code got `org.jetbrains.kotlin:kotlin-compiler-embeddable:1.3.11` dependency and extract using `depResult.getFrom().getId().getDisplayName()` which return string `project :`.
After that `project :` cannot be split into 2 items with ':' separator
- Gradle version: 5.1.1
- Android Studio version 3.3 stable:
- Plugin name and version:
-- com.google.gms:google-services:4.2.0
-- com.android.tools.build:gradle:3.3.0
-- org.jetbrains.kotlin:kotlin-gradle-plugin: 1.3.11
Rollback to com.android.tools.build:gradle:3.2.0 and to com.google.gms:google-services:4.1.0 is resolv this issue
Contributor guide
Assessment
This issue has not been assessed yet.