3
votes

I was looking for a while how to find out dependencies among libraries but I didn't find anything. E.g. in my build.gradle is

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile 'com.android.support:support-annotations:25.4.0'
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.4.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support.constraint:constraint-layout-solver:1.0.2'
    testCompile 'junit:junit:4.12'
    androidTestCompile 'com.android.support.test:runner:1.0.1'
    androidTestCompile 'com.android.support.test:rules:1.0.1'
//    androidTestCompile 'org.hamcrest:hamcrest-library:1.3'
    androidTestCompile 'com.android.support.test.espresso:espresso-core:3.0.1'
    androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.3'

How do I know what versions I can use ? (E.g., is com.android.support:support-annotations:25.4.0 compatible with com.android.support:appcompat-v7:25.4.0, etc. ?) Is this somewhere documented ? E.g., Android Studio tells me I can use newer version by highlighting the row to yellow and saying the newer version. But if I change it, I end up with configuration that builds if I run tests but doesn't build the app. Or vice versa.

E.g., I get an error

Error:Execution failed for task ':app:transformClassesWithInstantRunForDebug'.

Unexpected inputs: ImmutableJarInput{name=com.android.support:support-media-compat:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\73.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:animated-vector-drawable:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\69.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:appcompat-v7:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\68.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:support-vector-drawable:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\70.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:support-v4:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\71.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:support-compat:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\76.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:support-core-ui:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\75.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:support-core-utils:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\74.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:support-annotations:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\77.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}, ImmutableJarInput{name=com.android.support:support-fragment:25.3.1, file=C:\MyApp\app\build\intermediates\transforms\desugar\debug\72.jar, contentTypes=CLASSES, scopes=EXTERNAL_LIBRARIES, status=REMOVED}

1
Just suggesting, do this search over gradle 3 with AS 3, they changed compile to implementation/api/other one i dont rememberMarcos Vasconcelos
You can find the solution for this question here: stackoverflow.com/a/38004549/5219299Rafael Teles

1 Answers

9
votes

I just had this issue too and was able to fix it by removing the build folder from the project and building/running the application afterwards.