java 读取sources目录_java获取Resources目录文件问题

问题

为什么resource1能获取到,而resource获取不到呢?

目录结构

-java

- com.xxx

-YmlTest.java

- resources

application.yml

YmlTest.java代码

public class YmlTest {

public static void main(String[] args){

Yaml yaml = new Yaml();

//下面两个获取的都是YmlTest本身所在的classloader

URL resource = YmlTest.class.getResource("application.yml");

URL resource1 = YmlTest.class.getClassLoader().getResource("application.yml");

}

}

问题解决

查看Class代码

public java.net.URL getResource(String name) {

//这里会把传入的名称,update成当前类 包名 + "/" + name

name = resolveName(name);

ClassLoader cl = getClassLoader0();

if (cl==null) {

// A system class.

return ClassLoader.getSystemResource(name);

}

return cl.getResource(name);

}

public URL getResource(String name) {

URL url;

if (parent != null) {

url = parent.getResource(name);

} else {

url = getBootstrapResource(name);

}

if (url == null) {

url = findResource(name);

}

return url;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值