Сопоставление конструкторов ошибок при @embedding из библиотеки

Я пытаюсь использовать следующий @Entity:

@Entity(tableName = "transactions") data class TransactionWithState( @PrimaryKey val hash: String, @Embedded val transaction: Transaction, @Embedded val state: TransactionState) 

Транзакция – это класс из библиотеки и создает следующую проблему:

 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: 

Когда я копирую и вставляю класс Transaction в мой проект, он компилируется отлично. Но это дублирование и косвенность, которую я бы хотел избежать. Сначала это выглядело как проблема с заказом: https://github.com/walleth/kethereum/commit/fb9123c68739a315b42b3d7e57b016c7953530bf Но, к сожалению, это был тупик – в настоящее время я не вижу возможности использовать этот класс напрямую – был бы рад любой подсказке о том, как это сделать.

Проблема заключалась в следующем: https://issuetracker.google.com/issues/67181813

Обходной путь на данный момент состоит в том, чтобы создать один пустой конструктор и все поля как var no val

Intereting Posts