jline2报IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected错误的解决方法

这个文章有点标题党的嫌疑了:),但是我不会骗你,会给你一个解决方法,虽然不怎么好,但是至少可以解决你和我一样遇到的问题。


情况是这样的:使用jline2,在windows下工作正常,linux下(redhat)报出:java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected。尽管我已经attach了jline2的源码调试到问题的发生源头,但还是无济于事,个人推测是底层JNI的实现(如libjansi.so等)和当前运行的linux系统出现了一些兼容或运行时的错误,限于本人对JNI的了解和时间都有限,不打算在这个问题上再深入下去了,毕竟实现一个CLI只是我工作的很小一个部分。希望知道问题根源和解决方法的朋友留言给我。


好吧,说说我最后的处理方法:回退到jline1,问题就不存在了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Laurence 

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值