我在调试某个大型开源项目的时候偶然碰到这个问题,使用 openjdk11 ,或者 Amazon 的都没这个问题,在宿主机 windows host 里用 ibm 的 jdk 也没问题,只有在 wsl2 中用 ibm 的 jdk 产生了这个问题。我调试后发现似乎是某一次 native 方法的 Updatebytes0 返回的结果不同,但想不明白为什么。虽然是个小问题不影响什么但还是想探究一下原因,有没有大佬有点什么思路?有 wsl2 的朋友有空的话也可以帮忙试一下是不是只有我自己有这个问题,测试代码如下,路径应该随便一个 jar 包都可以。
File file = new File("/home/xxx/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar");
final InputStream input = file.toURI().toURL().openStream();
final ZipInputStream zipInput = new ZipInputStream(input);
ZipEntry entry;
while ((entry = zipInput.getNextEntry()) != null) {
if (!entry.isDirectory()) {
final String name = entry.getName();
System.out.println(name);
}
}
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.