如何正确获取 Java class 的 InputStream? Gitlab CI 失败

How to get an InputStream of a Java class properly? Gitlab CI fails

我今天遇到了一个问题,我想得到一个 java base class 的 InputStream 并且我的代码在我的个人电脑上正常工作但是当我在 Gitlab 上推送代码时,Gitlab CI 失败,因为它没有找到 java class。

try (InputStream inputStream = this.getClass().getResourceAsStream("/java/lang/String.class")) {
    System.out.println(inputStream); //Displays null on gitlab CI only
}

我认为我获取 InputStream 的方式是导致此错误的原因。

编辑:我希望能够获得 ArrayList.class 或 String.class 或 Object.class 的 InputStream ... 或多或少包含在 JDK.

有办法解决这个问题吗?

谢谢

我发现了问题,这是我的 .gitlab-ci.yml 中使用的 maven 图像的安全问题。我使用 3.5.0-ibmjava-9 图片是因为 3.5.0-jdk-9 是 SSL 证书的问题。 为了解决我的问题,我切换到 3.5.0-jdk-9-slim,它没有 SSL 问题,我认为内部 类 的安全检查较低.

感谢大家对安全的评论。他们帮了我很多 :D