使用Scala的2.7.7和LIFT 1.1-SNAPSHOT非法继承编译错误
题
我使用JDK 1.6.0_16,和Scala 2.7.7,与行家编译。
我做mvn clean compile
,我得到四个错误,但它们是相同的,不同的型号:
[ERROR] C:\ Users \用户所有者\工作空间\ ResumeApp \ SRC \主\阶\ jblack \ resumeapp \解除\ 型号\ ContactInfoModel.scala:13: 错误:非法继承;
[INFO]自型 jblack.resumeapp.lift.model.ContactInfoModel 不符合 net.liftweb.mapper.CRUDify [长,jblack.resumeapp.lift.model.ContactInfoModel] 的selftype net.liftweb.mapper.CRUDify [长,jblack.resumeapp.lift.model.ContactI nfoModel]与 jblack.resumeapp.lift.model.ContactInfoModel 与net.liftweb.map per.KeyedMetaMapper [长,jblack.resumeapp.lift.model.ContactInfoModel]
[INFO]与CRUDify [长, ContactInfoModel] {
和这是我的代码:
package jblack.resumeapp.lift.model
import net.liftweb.mapper._
object ContactInfoMetaData
extends ContactInfoModel
with KeyedMetaMapper[Long, ContactInfoModel] {
override def dbTableName = "contactinfo"
override def fieldOrder = List(key, data, display)
}
class ContactInfoModel
extends KeyedMapper[Long, ContactInfoModel]
with CRUDify[Long, ContactInfoModel] {
def getSingleton = ContactInfoMetaData
def primaryKeyField = id
object id extends MappedLongIndex(this)
object key extends MappedString(this, 100)
object data extends MappedString(this, 100)
object display extends MappedBoolean(this)
}
我不能肯定我在做什么错了。
不幸的是,因为我安装夜间插件,到Eclipse中,我不能安装IDE 2.7.7,所以只能用行家编译此。
有没有用,我如何使用CRUDify
问题?
解决方案
CRUDify升力-1.1需要被混入MetaMapper对象,而不是映射器类。
:那么它应该与此代码,而不是工作package jblack.resumeapp.lift.model
import net.liftweb.mapper._
object ContactInfoMetaData
extends ContactInfoModel
with KeyedMetaMapper[Long, ContactInfoModel]
with CRUDify[Long, ContactInfoModel] {
override def dbTableName = "contactinfo"
override def fieldOrder = List(key, data, display)
}
class ContactInfoModel
extends KeyedMapper[Long, ContactInfoModel] {
def getSingleton = ContactInfoMetaData
def primaryKeyField = id
object id extends MappedLongIndex(this)
object key extends MappedString(this, 100)
object data extends MappedString(this, 100)
object display extends MappedBoolean(this)
}
其他提示
我终于得到它工作正常,当我回去使用LIFT 1.0而不是1.1。看来,有一些变化,我需要最终考虑1.1,但至少我可以用我的发展下去。