gpt4 book ai didi

Java加载资源Class.class.getResource vs .class.getResource

转载 作者:行者123 更新时间:2023-11-29 06:11:07 31 4
gpt4 key购买 nike

两者有什么区别?

我的资源文件打包在根级包中。在我测试的特定情况下,调用 Class.class.getResource("/rec.txt") 似乎有效。但是,当我尝试在更大的环境 (hadoop) 中将此 jar 用作依赖项时,它不起作用(返回 null )。但是,将“类”更改为代码中的任何特定类可以修复它。有人可以扔一些灯。

最佳答案

发生这种情况的原因是 getResource 的工作方式。它实质上将调用委托(delegate)给 <classname> 的类加载器。正如您在问题中所说的那样。

Class 对象可能由企业应用程序中的引导类加载器加载,而您的类 <classname>由不同的类加载器加载。

关于Java加载资源Class.class.getResource vs <classname>.class.getResource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6823597/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com