从库中@embedding时匹配构造函数时出错

Error matching constructors when @embedding from library

我正在尝试使用以下@Entity:

@Entity(tableName = "transactions")
data class TransactionWithState(
        @PrimaryKey
        val hash: String,

        @Embedded
        val transaction: Transaction,

        @Embedded
        val state: TransactionState)

交易是来自库的 class 并产生以下问题:

e:   Tried the following constructors but they failed to match:
e:   Transaction(org.kethereum.model.ChainDefinition,java.lang.Long,org.kethereum.model.Address,java.math.BigInteger,java.math.BigInteger,java.util.List<java.lang.Byte>,java.math.BigInteger,org.kethereum.model.Address,java.lang.String,java.math.BigInteger) : [arg0 : null, arg1 : null, arg2 : null, arg3 : null, arg4 : null, arg5 : null, arg6 : null, arg7 : null, arg8 : null, arg9 : null]
e: error: Entities and Pojos must have a usable public constructor. You can have an empty constructor or a constructor whose parameters match the fields (by name and type).
e: 

当我将事务 class 复制并粘贴到我的项目时,它可以正常编译。但这是我想避免的重复和间接。 首先看起来订单有问题: https://github.com/walleth/kethereum/commit/fb9123c68739a315b42b3d7e57b016c7953530bf 但不幸的是,这是一个死胡同 - 目前我看不到直接使用这个 class - 如果有任何关于如何做到这一点的提示,我会很高兴。

Google Issues Tracker 报告的问题:

目前的解决方法是创建一个空构造函数并将所有字段作为 var no val

使用 kotlin-metadata 添加了对 kotlin 的支持。 将在 1.1 alpha 2 中退出