Corda-隐式合约升级抛出java.lang.NoSuchMethodError

Corda-隐式合约升级抛出java.lang.NoSuchMethodError,corda,Corda,你知道为什么隐式状态/契约升级会导致这种情况吗 java.lang.NoSuchMethodError: com.demo.DemoState.Lnet/corda/core/identity/AbstractParty;Lnet/corda/core/identity/AbstractParty;Lnet/corda/核心/合同/金额;Lnet/corda/核心/合同/金额;Lnet/corda/core/contracts/UniqueIdentifier;ILkotlin/jvm/inte

你知道为什么隐式状态/契约升级会导致这种情况吗

java.lang.NoSuchMethodError: com.demo.DemoState.Lnet/corda/core/identity/AbstractParty;Lnet/corda/core/identity/AbstractParty;Lnet/corda/核心/合同/金额;Lnet/corda/核心/合同/金额;Lnet/corda/core/contracts/UniqueIdentifier;ILkotlin/jvm/internal/DefaultConstructorMarker;五

采取的步骤

部署状态/契约版本为1的节点 启动所有节点 将新状态从A发布到B 停止节点A&B 将节点A和B中的版本1状态/合同替换为版本2 启动节点A和B 发出新状态…抛出错误
我的问题是…愚蠢


我已经将升级后的契约JAR添加到节点A和B中,但是我忽略了添加新的工作流JAR。因此,旧JAR试图用它的构造函数的旧定义来构造com.demo.DemoState,当然,它已经不存在了,因此。。。java.lang.NoSuchMethodError.

嘿,你能用以下内容更新你的问题吗?完整的堆栈跟踪和来自国家的代码?@NicholasRogers这是我自己愚蠢的错误。我升级了节点A和B中的状态/契约JAR,但没有升级工作流JAR,因此它正在加载旧工作流,而旧工作流正在尝试使用其旧构造函数构造com.demo.DemoState。更新工作流使一切正常工作!