首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当使用NotFoundException获取java.io.Serializable时,JDK9帮助JDK9

当使用NotFoundException获取java.io.Serializable时,JDK9帮助JDK9
EN

Stack Overflow用户
提问于 2016-06-18 00:54:34
回答 1查看 1.5K关注 0票数 7

我有以下代码:

代码语言:javascript
复制
private static CtClass resolveCtClass(String clazz) throws NotFoundException {
  ClassPool pool = ClassPool.getDefault();
  return pool.get( clazz );
}

在JDK8环境下运行时,如果使用java.io.Serializable调用此方法,则该方法可以工作,但在JDK9环境下运行时,它会抛出NotFoundException

这里有我忽略的东西吗?

EN

回答 1

Stack Overflow用户

发布于 2016-06-18 07:28:04

(我从未使用过Javassist,所以我只是在黑暗中拍摄,这里.)

ClassPool说:

如果在这个对象上调用了get(),它将搜索由ClassPath表示的各种源,以找到一个类文件,然后创建一个表示该类文件的CtClass对象。

这似乎与类路径的概念有关。ClassPathCtClass支持这一假设。

如果是这样的话,那么JDK 9的全新模块. 可能就不适合了。

如果我的猜测是正确的,那么您就不能从池中获得任何JDK类。这应该是容易证实的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37892267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档