首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Corda io.bluebank.braid与Corda企业有一个问题

Corda io.bluebank.braid与Corda企业有一个问题
EN

Stack Overflow用户
提问于 2019-10-21 18:40:57
回答 2查看 156关注 0票数 0

我使用Braid作为我的cordapp的for服务器。当我从cordapp转到企业时,当我运行cordapp时,我开始收到以下错误:

代码语言:javascript
复制
[ERROR] 2019-10-21T18:13:24,310Z [main] internal.Node.installCordaServices - Corda service sg.tradecloud.webserver.BraidService failed to instantiate. Reason was: com.fasterxml.jackson.module.kotlin.KotlinModule.<init>(IILkotlin/jvm/internal/DefaultConstructorMarker;)V [errorCode=19x6zj9, moreInformationAt=https://errors.corda.net/ENT/4.2/19x6zj9] {}
java.lang.NoSuchMethodError: com.fasterxml.jackson.module.kotlin.KotlinModule.<init>(IILkotlin/jvm/internal/DefaultConstructorMarker;)V
    at io.bluebank.braid.core.json.BraidJacksonInit.<clinit>(Serialisation.kt:31) ~[?:?]
    at io.bluebank.braid.corda.serialisation.BraidCordaJacksonInit.<clinit>(Register.kt:36) ~[?:?]
    at io.bluebank.braid.corda.BraidServer.<clinit>(BraidServer.kt:34) ~[?:?]
    at io.bluebank.braid.corda.BraidConfig.bootstrapBraid(BraidConfig.kt:140) ~[?:?]
    at io.bluebank.braid.corda.BraidConfig.bootstrapBraid$default(BraidConfig.kt:139) ~[?:?]
    at sg.tradecloud.webserver.BraidService.configureBraid(BraidService.kt:73) ~[?:?]
    at sg.tradecloud.webserver.BraidService.<init>(BraidService.kt:38) ~[?:?]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_202]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_202]
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_202]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_202]
    at net.corda.node.internal.AbstractNode.installCordaService(AbstractNode.kt:716) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.AbstractNode.installCordaServices(AbstractNode.kt:643) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.AbstractNode.access$installCordaServices(AbstractNode.kt:131) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.AbstractNode$start$8.invoke(AbstractNode.kt:416) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.AbstractNode$start$8.invoke(AbstractNode.kt:131) ~[corda-node-4.2.jar:?]
    at net.corda.nodeapi.internal.persistence.CordaPersistence.inTopLevelTransaction(CordaPersistence.kt:259) ~[corda-node-api-4.2.jar:?]
    at net.corda.nodeapi.internal.persistence.CordaPersistence.transaction(CordaPersistence.kt:235) ~[corda-node-api-4.2.jar:?]
    at net.corda.nodeapi.internal.persistence.CordaPersistence.transaction(CordaPersistence.kt:245) ~[corda-node-api-4.2.jar:?]
    at net.corda.node.internal.AbstractNode.start(AbstractNode.kt:405) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.Node.start(Node.kt:506) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.EnterpriseNode.start(EnterpriseNode.kt:207) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.NodeStartup.startNode(NodeStartup.kt:190) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.NodeStartupCli$runProgram$2.run(NodeStartup.kt:113) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.NodeStartup$initialiseAndRun$5.invoke(NodeStartup.kt:167) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.NodeStartup$initialiseAndRun$5.invoke(NodeStartup.kt:120) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.NodeStartupLogging$DefaultImpls.attempt(NodeStartup.kt:498) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.NodeStartup.attempt(NodeStartup.kt:120) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.NodeStartup.initialiseAndRun(NodeStartup.kt:166) ~[corda-node-4.2.jar:?]
    at net.corda.node.internal.NodeStartupCli.runProgram(NodeStartup.kt:111) ~[corda-node-4.2.jar:?]
    at net.corda.cliutils.CordaCliWrapper.call(CordaCliWrapper.kt:190) ~[corda-tools-cliutils-4.2.jar:?]
    at net.corda.cliutils.CordaCliWrapper.call(CordaCliWrapper.kt:156) ~[corda-tools-cliutils-4.2.jar:?]
    at picocli.CommandLine.execute(CommandLine.java:1056) ~[picocli-3.8.0.jar:3.8.0]
    at picocli.CommandLine.access$900(CommandLine.java:142) ~[picocli-3.8.0.jar:3.8.0]
    at picocli.CommandLine$RunLast.handle(CommandLine.java:1246) ~[picocli-3.8.0.jar:3.8.0]
    at picocli.CommandLine$RunLast.handle(CommandLine.java:1214) ~[picocli-3.8.0.jar:3.8.0]
    at picocli.CommandLine$AbstractParseResultHandler.handleParseResult(CommandLine.java:1122) ~[picocli-3.8.0.jar:3.8.0]
    at picocli.CommandLine.parseWithHandlers(CommandLine.java:1405) ~[picocli-3.8.0.jar:3.8.0]
    at net.corda.cliutils.CordaCliWrapperKt.start(CordaCliWrapper.kt:73) ~[corda-tools-cliutils-4.2.jar:?]

我做了一些研究,这似乎是因为Corda使用了com.fasterxml.jackson.module:jackson-module-kotlin2.9.7,它覆盖了Braid 2.9.5的默认版本,而Braid似乎不喜欢它。

如果您浏览jackson-module-kotlin的回购并查看类KotlinModule的构造函数,您可以看到以下更改,在2.9.5中,它声明为

代码语言:javascript
复制
class KotlinModule(val reflectionCacheSize: Int = 512) : SimpleModule(PackageVersion.VERSION)

2.9.7中,它被更改为

代码语言:javascript
复制
class KotlinModule(val reflectionCacheSize: Int = 512, val nullToEmptyCollection: Boolean = false, val nullToEmptyMap: Boolean = false) : SimpleModule(PackageVersion.VERSION)

这导致反射api无法找到它。

我能做些什么来解决这个问题?

EN

回答 2

Stack Overflow用户

发布于 2019-10-22 12:14:22

这个问题是修正的编织4.1.1-补丁-01以上版本,我想。谢谢科迪特团队

票数 2
EN

Stack Overflow用户

发布于 2019-10-21 19:16:11

嗯,这很有趣--我想知道这是否会给不用辫子的吊索带来麻烦!

也许我们需要一个编织的企业分支机构。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58492344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档