अद्यतन अक्टू 21 2014: buildtools का उपयोग करके निर्धारित मुद्दा पुष्टि की गई है 21.Jacoco Gradle 0.10.0 साथ: रिमोट ऑब्जेक्ट मौजूद नहीं है
अद्यतन सेप्ट 18 2014: issue's status को FutureRelease
पर अपडेट किया गया है।
अद्यतन: मैंने सुना है कि इस डैगर के साथ काम नहीं कर सकते हैं और के बाद से एस्प्रेसो डैगर का उपयोग करता है, यह कुछ समस्या आ रही हो सकता है। ग्रैडल टीम में bug was submitted।
Google ने हाल ही में अपने Gradle implementation to 0.10.0 को अपडेट किया। वे जो चीजें अब पेश करते हैं उनमें से एक जैकोको समर्थन है। ऐसा करने के लिए, वे निम्नलिखित को सेट करने का उल्लेख करते हैं:
testCoverageEnabled = true
आपके निर्माण प्रकार में। अब जब मैं अपने एस्प्रेसो परीक्षण (connectedCheck
का प्रयोग करके) चलाने के लिए, मैं कोई त्रुटि मिलती है मैं :connectedAndroidTest
कार्य जो यह बताता है चलाने के लिए शुरू अधिकार के रूप में:
Tests on HTC One - 4.2.2 - API 17 - 1080x1920 - 4.2.2 failed: Instrumentation run failed due to 'java.lang.VerifyError'
01:38:31 E/Device: Error during Sync: Remote object doesn't exist!
null
java.io.IOException: com.android.ddmlib.SyncException: Remote object doesn't exist!
at com.android.builder.testing.ConnectedDevice.pullFile(ConnectedDevice.java:114)
at com.android.builder.internal.testing.SimpleTestCallable.call(SimpleTestCallable.java:158)
at com.android.builder.internal.testing.SimpleTestCallable.call(SimpleTestCallable.java:42)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: com.android.ddmlib.SyncException: Remote object doesn't exist!
at com.android.ddmlib.SyncService.pullFile(SyncService.java:314)
at com.android.ddmlib.Device.pullFile(Device.java:849)
at com.android.builder.testing.ConnectedDevice.pullFile(ConnectedDevice.java:107)
... 8 more
:connectedAndroidTest FAILED
यहाँ भागों मैं build.gradle
फ़ाइल में बदल गया है कर रहे हैं
buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:0.10.+'
...
}
...
}
android {
buildTypes {
debug {
testCoverageEnabled = true
...
}
....
}
...
}
क्या कोई अन्य टुकड़ा build.gradle
फ़ाइल है जिसे मुझे जैकोको काम करने के लिए अद्यतन करने की आवश्यकता है?
त्रुटि का उल्लेख है कि एक "दूरस्थ वस्तु" मौजूद नहीं है। आम तौर पर मैं इसे एमुलेटर को सिंक से बाहर करने के लिए विशेषता देता हूं और पुनरारंभ करना इसे ठीक करेगा। लेकिन मैंने कोशिश की है और यह भी काम नहीं किया है। कोई विचार क्या त्रुटि मुझे बताने की कोशिश कर रहा है?
मैं एक ही सटीक मुद्दा (डैगर या एस्प्रेसो का उपयोग नहीं) में चल रहा हूँ। परीक्षण वास्तविक डिवाइस पर चलते हैं (नेक्सस 4, 4.3.1)। मैं लॉग इन में CoverageTransformer (JaCoCo एजेंट का हिस्सा) के लिए ClassNotFoundException देख रहा हूं .. – friederbluemle
यह पुलफ़ाइल विधि में विफल रहा है, मुझे लगता है कि यह उस फ़ाइल को खींचने की कोशिश कर रहा है जिसकी अनुमति नहीं है, एक एमुलेटर पर प्रयास करें (क्योंकि यह कार्य करता है एक रूट डिवाइस) और देखें कि क्या यह फ़ाइल को खींच सकता है। –
यह मेरा पहला विचार भी था, लेकिन मैंने रूट डिवाइस का उपयोग किया और रूट मोड 'adb root' में एडीबी को पुनरारंभ किया, फिर भी वही त्रुटि देखी गई। – friederbluemle