github / github/codeql

Java: For some projects JDK classes have location under `sourceLocationPrefix`

未关闭
#11,265 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
acknowledged Java question
主要语言
CodeQL
星标
10.1k
派生
2.1k
平均合并
2 天 15 小时
30 天内合并 PR
141

描述

### Version
CodeQL CLI 2.11.2

### Description
For some projects JDK classes such as `java/lang/String.class` have a location under the `sourceLocationPrefix` of the database, for example `file:///home/runner/work/quarkus/quarkus/modules/java.base/java/lang/String.class:0:0:0:0`.

This can cause tools such as the VS Code extension to erroneously construct URLs to these files and display them to the user, even though the files are not actually part of the sources and therefore the URLs point to non-existent files.

Expected would be that the location of JDK classes is outside the sources directory (which is the case for most databases), for example `file:///modules/java.base/java/lang/String.class:0:0:0:0`.

Affected projects (GitHub CodeQL databases):
- https://github.com/Activiti/Activiti/commit/a4c8dd6090914ca76e44defa3449b058ec8e8657
- https://github.com/eclipse/jetty.project/commit/df265e0abb30e696f5fe8a8c898c4c8b41e0cef9
- https://github.com/kiegroup/drools/commit/b7dd8323d5e7ba47e826d2a8dffcac09219b8e3f
- https://github.com/qos-ch/logback/commit/ea165fb023f55aec48d3051b817105a69e881eb9
- https://github.com/quarkusio/quarkus/commit/967d3497b585af137e69a980c26ba5af30ab84dc
- https://github.com/redisson/redisson/commit/66390899ea26af7cb0faa46bd677229e73af8ae4

CodeQL query detecting this:
```ql
import java

from TypeString s
select s, s.getLocation(), s.getFile().getRelativePath()
```

Feel free to close this issue if you don't think fixing or adjusting this is worth it.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。