加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 当Thread.currentThread().getContextClassLoader()返回

发布时间:2020-12-15 02:21:47 所属栏目:Java 来源:网络整理
导读:从包含/ META-INF中的JAX-WS SPI文本文件的JAR文件开始,然后是它指向的类.把它放到类路径中.将当前线程的contextClassLoader设置为null. 从JDK 1.6中的JAX-WS API调用Service类,然后开始逐步执??行它.在没有上下文类加载器的情况下,此代码将调用Class的静态
从包含/ META-INF中的JAX-WS SPI文本文件的JAR文件开始,然后是它指向的类.把它放到类路径中.将当前线程的contextClassLoader设置为null.

从JDK 1.6中的JAX-WS API调用Service类,然后开始逐步执??行它.在没有上下文类加载器的情况下,此代码将调用Class的静态方法来查找内容.

它将成功找到SPI文件.但它找不到它命名的.class.

如果您真的想亲自尝试一下,请抓住Apache CXF 2.2.10,将它放在类路径上,并将上下文类加载器置空.

这不是一个毫无意义的受虐狂的练习:事实证明,当Open Office调用Java扩展(‘UNO’)时,它会使上下文类加载器为null.需要一些重要的直肠学考古学来解决这个问题.这让我想知道,是否有一个JDK错误解释了不一致的结果,或一些我不理解的指定行为?

解决方法

为此类事件提出了各种各样的错误;例如扫描 this query的结果.一般的Sun响应是这些功能不是错误,并且不会被修复;例如 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4155645.

底线是getContextClassLoader可以返回null.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读