java.io.FileNotFoundException:/jacoco.exec:打开失败:EROFS(只读文件系统)

时间:2019-05-13 15:34:27

标签: android jacoco

在尝试实施JaCoCo脱机检测时遇到此问题。

W/System.err( 1733): java.io.FileNotFoundException: /jacoco.exec: open failed: EROFS (Read-only file system)
W/System.err( 1733):    at libcore.io.IoBridge.open(IoBridge.java:456)
W/System.err( 1733):    at java.io.FileOutputStream.<init>(FileOutputStream.java:89)
--
W/System.err( 1733):    at libcore.io.IoBridge.open(IoBridge.java:456)
W/System.err( 1733):    at java.io.FileOutputStream.<init>(FileOutputStream.java:89)
W/System.err( 1733):    at org.jacoco.agent.rt.internal_14f7ee5.output.FileOutput.openFile(FileOutput.java:67)
W/System.err( 1733):    at org.jacoco.agent.rt.internal_14f7ee5.output.FileOutput.startup(FileOutput.java:49)
W/System.err( 1733):    at org.jacoco.agent.rt.internal_14f7ee5.Agent.startup(Agent.java:122)
W/System.err( 1733):    at org.jacoco.agent.rt.internal_14f7ee5.Agent.getInstance(Agent.java:50)
W/System.err( 1733):    at org.jacoco.agent.rt.internal_14f7ee5.Offline.<clinit>(Offline.java:31)

3 个答案:

答案 0 :(得分:1)

该解决方案已在jacoco中进行了详细记录,但对于Android人士来说,您需要在/src/androidTest/resources/jacoco-agent.properties中添加内容为output=none的文件,以便jacoco可以正常启动并编写覆盖范围像往常一样,稍后由android gradle插件覆盖实现正确传输。

答案 1 :(得分:0)

无论您做什么,都使用错误的路径。通常不允许您写入设备文件系统的根文件夹(这就是路径中的/所指示的内容)。

答案 2 :(得分:0)

您需要提供有效的目的地;将一个添加到jacoco-agent.properties

destfile=/sdcard/jacoco.exec

请参见Offline Instrumentation