linux - Linux 中的 Eclipse : running a Junit coverage test gives an error "permission denied"

标签 linux eclipse junit code-coverage permission-denied

当我尝试对 Java 项目运行覆盖率测试时,出现 java.io.IOException: Permission Denied 错误。

我可以运行单独的 JUnit 测试,并且它们工作得很好。

一起运行测试(通过 Coverage 作为 JUnit 测试),我收到错误。

与错误相关的插件是org.eclipse.jdt.junit.core

给出的堆栈跟踪以org.eclipse.core.internals.jobs.Worker.run(Worker.java:54)开始,以java.io.UnixFileSystem.createFileExclusively(Native Method)结束。

我能够在构建项目之前运行覆盖率测试,但在构建之后它将无法运行。不确定这些是否有联系。

最佳答案

发现问题 - java.io.UnixFileSystem.createFileExclusively(Native Method)。我的一项测试(最新的一项,尚未在覆盖率测试下运行)正在尝试写入一个权限以某种方式发生更改的文件。一旦权限被重置以允许我访问,覆盖率测试就会运行。仍然不确定为什么它允许我单独运行测试,但现在一切都运行了。

关于linux - Linux 中的 Eclipse : running a Junit coverage test gives an error "permission denied",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14505141/

相关文章:

linux - wget 仅记录成功下载的 url

java - Maven/Scala : Filename is too long

java - Eclipse IDE 中的“设计”选项卡为空白

android - 使用 RxJava2 和 MutableLiveData 进行单元测试

java - 点击(160.0,120.0)无法完成! (java.lang.SecurityException : Injecting to another application requires INJECT_EVENTS permission)

linux - centOS 7 屏幕分辨率 - HyperV 托管

linux - 如何通过读取多值分隔文件写入单值行

java - 如何使用 Mockito 比较 Junit 测试用例中的多个条件

regex - 用于货币的 Linux sed 正则表达式

java - 在 Ubuntu 上的 Eclipse 中设置 Tomcat