使用开放源代码4.0版本启动Corda节点时,使用示例Finance cordapp,该节点将失败,并显示以下错误:
______ __
/ ____/ _________/ /___ _
/ / __ / ___/ __ / __ `/ Where do cryptographers go for
/ /___ /_/ / / / /_/ / /_/ / entertainment? The security theatre.
\____/ /_/ \__,_/\__,_/
--- Corda Open Source 4.0 (503a2ff) -------------------------------------------------------------
Logs can be found in : C:\git\samples\obligation-cordapp\kotlin-source\build\nodes\PartyA\logs
[quasar] WARNING: Method not found in class - assuming suspendable: net/corda/finance/workflows/GetBalances#getCashBalance(Lnet/corda/core/node/ServiceHub;Ljava/util/Currency;)Lnet/corda/core/contracts/Amount; (at SettleObligation.kt:net/corda/examples/obligation/flows/SettleObligation$Initiator#call)
[quasar] WARNING: Method not found in class - assuming suspendable: net/corda/finance/workflows/asset/CashUtils#generateSpend$default(Lnet/corda/core/node/ServiceHub;Lnet/corda/core/transactions/TransactionBuilder;Ljava/util/List;Lnet/corda/core/identity/PartyAndCertificate;Ljava/util/Set;ILjava/lang/Object;)Lkotlin/Pair; (at SettleObligation.kt:net/corda/examples/obligation/flows/SettleObligation$Initiator#call)
! ATTENTION: This node is running in development mode! This is not safe for production deployment.
[ERROR] 11:55:02+0000 [main] internal.NodeStartupLogging.invoke - Could not create the DataSource: Error parsing master.changelog.json: Could not create the DataSource: Error parsing master.changelog.json [errorCode=13ajh5q, moreInformationAt=https://errors.corda.net/OS/4.0/13ajh5q]
答案 0 :(得分:1)
在Corda 4.0中,财务cordapp已分为两部分,即corda-finance合同和corda-finance-workflow。
由于签名约束方面的工作,(请参见此处:https://docs.corda.net/release-notes.html#signature-constraints),现在可以对CorDapp JAR进行签名了。因此,我们建议为合同和工作流创建单独的JAR,以便工作流可以根据其所依赖的合同而独立发展。
corda-workflows-finance JAR包含财务应用程序的数据库迁移,因此您需要同时安装两个应用程序才能使财务应用程序正常工作。将工作流JAR添加到节点cordapp目录将解决此问题。
可在以下位置找到JAR:https://ci-artifactory.corda.r3cev.com/artifactory/corda-releases/net/corda/corda-finance-workflows/