这是我的情况:
背景
取得的进展
build\中间类
中)是用JaCoCo检测的,并且被打包在APK中。问题
当我手动运行应用程序时,我一直在logcat中看到错误W/System. err:java.io.FileNotFoundException: /jacoco.exec:open失败:EROFS(只读文件系统)
从这个SO问题和JaCoCo文档中,我明白Jacoco需要知道在哪里存储Jacoco. exec
文件-并且我需要用APK打包一个jacoco-agent.properties(包含devfile
属性)。
我尝试过将jacoco-agent.properties放入资产
-它被正确地打包到APK中,但似乎没有任何效果(即Jacoco像往常一样失败)我尝试将其放入res
-它没有被打包到APK中。我尝试了res/原始
,并在文件名中遇到了破折号的错误,如SO问题所示。
我无计可施,非常感谢帮助。如何使用Gradle构建将jacoco-agent.properties打包到APK中,以便JaCoCo阅读?
相关问题
这个SO的问题,从2013年就有了答案,是给蚂蚁的,不是格拉德尔的。
我不熟悉执行Jacoco
工作的要求,但是您可以很容易地使用apk打包文件。下面的代码将把jacoco-agent.properties
放在apk包的根目录中。
对您的应用模块的build. gradle
进行以下更改:
android {
...
sourceSets {
main {
resources.includes = [ '**/jacoco-agent.properties' ]
}
}
}