Fixed
Status Update
Comments
[Deleted User] <[Deleted User]> #2
This is a terrible oversight on our part but unfortunately there is no clean way to revert this API in order to break Guava dependency.
As a result, there will be a breaking public API change in the next release to address this issue. We introduced an ugly wrapper around Guava Optional class, named EspressoOptional which will live under "android.support.test.espresso.util" namespace. Developers that were using the leaked Guava Optional API will need to change their imports and references to use EspressoOptional during the update to the new version.
Sorry for the inconvenience this may cause. We'll make sure to add a note for this in the next release announcement and change-logs.
As a result, there will be a breaking public API change in the next release to address this issue. We introduced an ugly wrapper around Guava Optional class, named EspressoOptional which will live under "android.support.test.espresso.util" namespace. Developers that were using the leaked Guava Optional API will need to change their imports and references to use EspressoOptional during the update to the new version.
Sorry for the inconvenience this may cause. We'll make sure to add a note for this in the next release announcement and change-logs.
pa...@gmail.com <pa...@gmail.com> #3
Did anyone find a workaround for this?
Also: any chance of getting an updated version soon, 2.2.2 has been released for a while?
Also: any chance of getting an updated version soon, 2.2.2 has been released for a while?
nk...@google.com <nk...@google.com>
br...@google.com <br...@google.com>
pa...@gmail.com <pa...@gmail.com> #4
Is there a snapshot/alpha available somewhere?
Description
*What steps will reproduce the problem?*
1. Create a new Android project in AndroidStudio
2. Add espresso-web and Guava (or any other library that transitively depends on Guava) as dependencies for testing (see attached build.gradle)
3. Build the connectedAndroidTest target
*What is the expected output?*
I expect that the build succeeds and starts the tests
*What do you see instead?*
The build fails with an exception:
{{{
:app:dexDebugAndroidTest
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Lcom/google/thirdparty/publicsuffix/PublicSuffixPatterns;
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:303)
at com.android.dx.command.dexer.Main.run(Main.java:246)
at com.android.dx.command.dexer.Main.main(Main.java:215)
at com.android.dx.command.Main.main(Main.java:106)
Error:Execution failed for task ':app:dexDebugAndroidTest'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/java'' finished with non-zero exit value 2
}}}
*What version of the product are you using? On what operating system?*
Espresso 2.2, Guava 18.0 with AndroidStudio 1.2.2 on MacOS 10.10.4