Sus*_*ota 6 java windows code-coverage intellij-idea
运行覆盖范围的应用程序时,未显示覆盖范围。我看到我的日志与工作机器日志的不同之处在于我的控制台日志中没有记录coverage-agent.jar。有谁知道修复?
我正在运行 IntellijIdea Ultimate 2019.2.1 和 JDK 版本 1.8.221。我尝试了所有选项,例如卸载 IntelliJ,也尝试过社区版,降级到较低版本,将 JDK 版本更改为更高的 9 和更低的 1.8.211,检查插件,还删除了 Intellij 设置文件夹,但它们都不起作用。我联系了 IntelliJ 支持团队,他们还建议删除 IntelliJ 设置文件夹,但这没有用。
这是在覆盖模式下运行时的日志。在这里我们没有看到coverage-agent jar 调用日志。
"C:\Program Files\Java\jdk1.8.0_221\bin\java.exe" -ea -Didea.test.cyclic.buffer.size=1048576 "-javaagent:C:\Users\<User> Baskota\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6603.8\lib\idea_rt.jar=52886:C:\Users\<User> Baskota\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6603.8\bin" -Dfile.encoding=UTF-8 -classpath "C:\Users\<User> Baskota\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6603.8\lib\idea_rt.jar;C:\Users\<User> Baskota\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6603.8\plugins\junit\lib\junit-rt.jar;C:\Users\<User> Baskota\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6603.8\plugins\junit\lib\junit5-rt.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\jaccess.jar;C:\Program
Run Code Online (Sandbox Code Playgroud)
这是在具有相同 IntelliJ Idea 版本和 JDK 版本的不同机器上运行的同一项目的控制台日志。这里覆盖工作正常,日志有覆盖代理 jar 调用日志。
"C:\Program Files\Java\jdk1.8\bin\java.exe" -ea -javaagent:C:\Users\<User>\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6262.58\lib\intellij-coverage-agent-1.0.508.jar=C:\Users\<User>\AppData\Local\Temp\coverage1args -Didea.test.cyclic.buffer.size=1048576 -javaagent:C:\Users\<User>\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6262.58\lib\idea_rt.jar=63530:C:\Users\<User>\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6262.58\bin -Dfile.encoding=UTF-8 -classpath "C:\Users\<User>\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6262.58\lib\idea_rt.jar;C:\Users\<User>\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6262.58\plugins\junit\lib\junit-rt.jar;C:\Users\<User>\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6262.58\plugins\junit\lib\junit5-rt.jar;C:\Program Files\Java\jdk1.8\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8\jre\lib\ext\jaccess.jar;C:\Program
Run Code Online (Sandbox Code Playgroud)
有没有人遇到过这种奇怪的问题?我的报道直到几天前才有效。任何建议和帮助都非常感谢。
谢谢!
如果覆盖率库的路径包含空格,代码覆盖率可能不起作用。您可以通过idea.log中的以下行来判断:
2019-08-31 19:30:17,148 [ 130152] INFO - ij.execution.JavaExecutionUtil - agent not used since the agent path contains spaces: C:\Users\Some User Name With Spaces\AppData\Local\JetBrains\Toolbox\apps\IDEA-U\ch-0\192.6603.8\plugins\coverage\lib
One can move the agent libraries to a directory with no spaces in path and specify its path in idea.properties as java.test.agent.lib.path=<path>
Run Code Online (Sandbox Code Playgroud)
解决方法是将指定的 lib 目录复制到某个不带空格的新位置,例如c:\coverage-lib. 然后在Help| 编辑自定义属性指定这个新位置:
java.test.agent.lib.path=c:/coverage-lib
Run Code Online (Sandbox Code Playgroud)
还需要复制IDEA_HOME\lib\intellij-coverage-agent-1.0.508.jar(版本可能不同)到同一位置,不带空格。
重新启动 IntelliJ IDEA。
| 归档时间: |
|
| 查看次数: |
2326 次 |
| 最近记录: |