我将JDO与Scala中的DataNucleus类型安全查询语言一起使用。因此,我有这样的代码:
val id: Long = // something
val cand: QDbObject = QDbObject.candidate()
pm.query[DbObject].filter(cand.id.eq(id))...
简而言之,这将为所有
DbObject
谁的
id
字段等于
身份证件
。很遗憾,我收到以下警告:
NumericExpression[Long] and Long are unrelated: they will most likely
never compare equal
显然,Scala编译器认为
NumericExpression[Long]
正在使用的内置定义
eq()
,类似于
==
,但由于这来自Java
方程式()
方法与Scala的
方程式()
方法
有什么办法可以摆脱警告吗?显然,这种情况会经常发生,我担心这些非警告会掩盖真正的警告。
使现代化
(2013-06-29)
这在Scala 2.10.2中得到了修复。警告已经消失了。