当我们要从硬盘上获取资源当时候,通常用两种方式获取资源文件: Class.getResource() Class.getResourceAsStream() 此函数的入参是classpath. 1.两种classpath 1.1 系统的classpath,.bash_profile里配的那个classpath 是这个路径值吗?不是! 1.2 idea编译器的classpath 这两个不是一个路径!如果系统环境变量没配,idea配了,程序也是可以跑的。 在下载资源的时候,用的是idea 里Module配置的classpath 2.idea classpath==outputpath 上图:
把资源文件放在这里即可。(上图为网上搜的)
比如:
1.outpath="/Users/Desktop/java/ideaPrj/test/out/production/module"
加载images文件夹资源时:
2.文件夹路径:
/Users/Desktop/java/ideaPrj/test/out/production/module/images
代码:
Module.class.getClassLoader().getResourceAsStream("images/pic2.png")
匹配上就可以正确加载了。