每当我们从 Eclipse 中运行 Java 客户端以使用 RMI 联系服务器应用程序时,我们都会收到异常:java.io.StreamCorruptedException: invalid type code: 01
这只发生在 Eclipse 中,没有其他地方(IntelliJ、命令行等)。
有谁知道发生了什么?
您之前似乎遇到过这个问题;)并且在 JBoss 中也可以看到。
它通常是一个:
查看器
ClassLoader
运行时上下文中的 是org.apache.catalina.loader.WebappClassLoader
.因此,如果我执行以下操作:
ClassLoader savedClassLoader = Thread.currentThread.getContextClassLoader();
if (savedClassLoader.getClass().getName().equalsIgnoreCase("org.apache.catalina.loader.WebappClassLoader")){
Thread.currentThread().setContextClassLoader(this.getClass().getClassLoader());
}
然后将保存的加载程序设置回
IConnection.Close()
,它可以工作
会不会是服务器和客户端代码不兼容?你用什么 JVM 来编译每一个?