MAC-IDEA-CLASSPATH

本文探讨了在IDEA中如何通过不同的classpath设置正确加载资源文件,包括理解系统与IDEA的classpath区别,以及如何利用Class.getResource()和Class.getResourceAsStream()函数从硬盘获取资源。
当我们要从硬盘上获取资源当时候,通常用两种方式获取资源文件:
 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")

匹配上就可以正确加载了。 

"C:\Program Files\Java\jdk-25\bin\java.exe" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2025.2.3\lib\idea_rt.jar=64512" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath C:\Users\35007\IdeaProjects\basic-unit-testing-Rayleiteng\target\classes;C:\Users\35007\IdeaProjects\basic-unit-testing-Rayleiteng\target\test-classes;C:\Users\35007\IdeaProjects\basic-unit-testing-Rayleiteng\target\classes;C:\Users\35007\.m2\repository\org\junit\jupiter\junit-jupiter\5.8.1\junit-jupiter-5.8.1.jar;C:\Users\35007\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.8.1\junit-jupiter-api-5.8.1.jar;C:\Users\35007\.m2\repository\org\opentest4j\opentest4j\1.2.0\opentest4j-1.2.0.jar;C:\Users\35007\.m2\repository\org\junit\platform\junit-platform-commons\1.8.1\junit-platform-commons-1.8.1.jar;C:\Users\35007\.m2\repository\org\apiguardian\apiguardian-api\1.1.2\apiguardian-api-1.1.2.jar;C:\Users\35007\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.8.1\junit-jupiter-params-5.8.1.jar;C:\Users\35007\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.8.1\junit-jupiter-engine-5.8.1.jar;C:\Users\35007\.m2\repository\org\junit\platform\junit-platform-engine\1.8.1\junit-platform-engine-1.8.1.jar;C:\Users\35007\AppData\Roaming\JetBrains\IntelliJIdea2025.2\plugins\pitest-idea\lib\ifc-junit-jupiter-api\5.10.0\junit-platform-launcher-1.10.5.jar;C:\Users\35007\AppData\Roaming\JetBrains\IntelliJIdea2025.2\plugins\pitest-idea\lib\ifn-pitest\antlr-2.7.7.jar;C:\Users\35007\AppData\Roaming\JetBrains\IntelliJIdea2025.2\plugins\pitest-idea\lib\ifn-pitest\asm-9.7.1.jar;C:\Users\35007\AppData\Roaming\JetBrains\IntelliJIdea2025.2\plugins\pitest-idea\lib\ifn-pitest\asm-analysis-9.7.1.jar;C:\Users\35007\AppData\Roaming\JetBrains\IntelliJIdea2025.2\plugins\pitest-idea\lib\ifn-pitest\asm-commons-9.7.1.jar;C:\Users\35007\AppData\Roaming\JetBrains\IntelliJIdea2025.2\plugins\pitest-idea\lib\ifn-pitest\asm-tree-9.7.1.jar;C:\Users\35007\AppData\Roaming\JetBrains
最新发布
10-22
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值