【发布时间】:2018-07-24 00:27:25
【问题描述】:
我刚刚升级到com.android.tools.build:gradle:3.0.1 和最新的 Android Studio 稳定版 (3.0.1),突然我的 espresso 测试无法运行。我收到以下错误,不知道它的含义。有什么建议吗?
[Device]: Error during Sync: Broken pipe
com.android.ddmlib.InstallException: Broken pipe
at com.android.ddmlib.Device.installPackage(Device.java:914)
at com.android.builder.testing.ConnectedDevice.installPackage(ConnectedDevice.java:122)
at com.android.builder.internal.testing.SimpleTestCallable.call(SimpleTestCallable.java:126)
at com.android.builder.internal.testing.SimpleTestCallable.call(SimpleTestCallable.java:52)
Caused by: java.io.IOException: Broken pipe
at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
at sun.nio.ch.IOUtil.write(IOUtil.java:65)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471)
at com.android.ddmlib.AdbHelper.write(AdbHelper.java:927)
at com.android.ddmlib.SyncService.doPushFile(SyncService.java:699)
at com.android.ddmlib.SyncService.pushFile(SyncService.java:408)
at com.android.ddmlib.Device.syncPackageToDevice(Device.java:954)
at com.android.ddmlib.Device.installPackage(Device.java:910)
【问题讨论】:
-
您是否完成了基本操作、重启设备、清理项目?损坏的管道似乎是因为网络处于薛定谔状态,不同步,即套接字在一侧而不是另一侧打开
-
另一个想法是传递依赖都被混淆了。任何依赖项使用不同的版本?
-
我确实重启了设备,清理了项目...我会检查一些奇怪的依赖关系。
-
没有发现任何可疑情况
-
在堆栈跟踪中没有列出您的包,所以我认为您的代码不是问题。这是一个 gradle 和依赖关系的问题(正如你在问题中暗示的那样)我最近看到了一个类似的问题。我会看看我能找到什么
标签: android android-studio android-gradle-plugin android-espresso