使用class.getClassLoader().getResource()的注意事项
前几天在写一个C/S的小工具,使用class.getClassLoader().getResource("")时,发现一个问题,程序如下:
public class ClassLoaderTest {
public static void main(String[] args){
String classPath1 = ClassLoaderTest. class .getClassLoader().getResource(
" config.ini " ).toString();
System.out.println( " classPath1: " + classPath1);
String classPath2 = ClassLoaderTest. class .getClassLoader().getResource(
"" ).toString();
System.out.println( " classPath2: " + classPath2);
}
}
打成jar包test.jar后
执行
java -jar test.jar
pause
执行结果
classPath1:jar:file:/D:/DEV.WORK/works_acnt/Test/test.jar!/config
Exception in thread "main" java.lang.NullPointerException
at com.syj.ClassLoaderTest.main(ClassLoaderTest.java:9)
执行
set CLASSPATH=%CLASSPATH%;test.jar;
java com.syj.ClassLoaderTest
pause
执行结果
classPath1:file:/D:/DEV.WORK/works_acnt/Test/config.ini
classPath2:file:/D:/DEV.WORK/works_acnt/Test/
不难发现当使用java -jar test.jar启动程序时可以getResource一个具体文件是没有问题的但是getResource("")就会出问题,要把这个jar放
到ClassPath里面才行
可见用java -jar test.jar启动程序时程序并不知道当前这个test.jar的绝对路径
使用class.getClassLoader().getResource()的注意事项相关推荐
- Class.getResource()与Class.getClassLoader().getResource()解析
我们在eclipse上写的.java文件最终会被编译成一个.class的字节码文件.而java源文件存储在src文件下,而编译后的.class字节码文件存储在bin文件下. 一. 通过Class.ge ...
- class.getClassLoader().getResource(xxx)是什么意思啊?最后这个xxx和这个类有什么关系?...
http://zhidao.baidu.com/link?url=N5uieIh4DUdPn0qHq5f2KXWpHUik1eEeW1ttrowqRiqcRPipludkf8NmPKWcwwGsfPL ...
- Class.getResource()、ClassLoader.getResource()和this.class.getClassLoader()解析
this.class.getClassLoader()解析 java是面向对象语言,面向对象的语言的宗旨就是万事万物皆对象,那么类.类里面的属性和方法都是对象.java里面的所有的类都是Class类的 ...
- 关于Class.getResource和ClassLoader.getResource的路径问题
本文转自:http://www.cnblogs.com/yejg1212/p/3270152.html Java中取资源时,经常用到Class.getResource和ClassLoader.getR ...
- JAVA class.getResource()的用法
用JAVA获取文件,听似简单,但对于很多像我这样的新人来说,还是掌握颇浅,用起来感觉颇深,大常最经常用的,就是用JAVA的File类,如要取得c:/test.txt文件,就会这样用File file ...
- this.class.getClassLoader().getResourceAsStream与this.class.getResourceAsStream
本文部分转自:http://xixinfei.iteye.com/blog/1256291 this.getClass().getClassLoader().getResource("tem ...
- log4j用于读取.xml文件的出现了错误,类加载器.getResource(user.xml).getPath()返回路径空格变成了%20...
最近在训练web的三层开发模式,写了一个小程序,为了模拟数据库,用了xml来进行存放数据,因此需要将xml文件装载到内存中去,代码如下 private static String fileName;s ...
- Java文件路径(getResource)
getResourceAsStream ()返回的是inputstream getResource()返回:URL Class.getResource("") 返回的是当前C ...
- java中Class.getResource用法(用于配置文件的读取)
用JAVA获取文件,听似简单,但对于很多像我这样的新人来说,还是掌握颇浅,用起来感觉颇深,大常最经常用的,就是用JAVA的File类,如要取得c:/test.txt文件,就会这样用File file ...
最新文章
- sea.js学习网址和书籍
- Swift中@IBDesignable/@IBInspectable的使用
- 显卡驱动程序卸载以及安装
- 蛋疼的ElasticSearch(一)之安装ElasticSearch
- Javascript之预加载图片
- Pandas数据类型及操作
- JavaScript返回上一页并刷新的多种实现方法(十八)
- 职业生涯最差绩效:M-
- kakfa学习教程一
- Laravel 实现任务调度功能
- 飞客蠕虫(Conficker)
- RQNOJ 34 紧急援救
- PowerApps教程05-记录的搜索和筛选
- 无招胜有招-代码解读阿里开源芯片平台无剑100
- 小窍门:简历邮箱格式的正确写法,个人简历怎么发送到邮箱?
- No silver bullet——没有银弹理论
- Storm - Trident
- 多媒体个人计算机能处理什么,多媒体计算机可以处理的信息类型有什么?
- 编写js代码的注意问题
- gitHub客户端Desktop的安装使用总结 ---基础篇
热门文章
- android annotations
- 高仿钉钉和小米的日历控件
- 球谐光照与PRT学习笔记(一):引入
- python输入城市名称_python - 使用熊猫一次将多个城市名称格式化为每个城市的通用名称 - 堆栈内存溢出...
- 健康老年人静息态EEG的功率和功能连接变化
- 微信小程序如何开发购物车的微信支付功能
- CTFshow DJBCTF MISC(大吉杯) WP
- loadrunner12-错误 -26366: 找不到 web_reg_find 的“Text=19728.00”
- JavaScript(四)
- 2.4G/5G频段WLAN各国使用信道表