嗨,我有以下代码...
Flowable.fromIterable(records.records())
.flatMap(record -> {
return consume(record);
})
.doOnError(t -> t.printStackTrace()) <--- Compiler complains about this
.onErrorResumeNext(Flowable.empty())
.doOnTerminate(() -> {
...
}).subscribe();
然后...
public abstract Flowable consume(ConsumerRecord<String, String> record);
使用上面的IntelliJ不会抱怨任何错误。但是,一旦构建代码,我就会...
Error:(71, 50) java: cannot find symbol
symbol: method printStackTrace()
location: variable t of type java.lang.Object
如果我放...
public abstract Flowable<?> consume(ConsumerRecord<String, String> record);
然后它可以构建并正常运行。所以我猜类型信息丢失了吗?
更新 该应用程序通过Intellij中的Gradle运行任务运行。并澄清IntelliJ编辑器/自动完成功能不认为这是错误。
答案 0 :(得分:0)
根据上面的评论。需要从IntelliJ 2017升级到至少2018/2019。现在编辑器将其视为错误。