科尔达弹簧 启动跟踪的流量 未知的常量池标签



如果您连接 Spring 引导应用程序以通过 rpc 连接到参与方(在本例中为 IOU 示例方 A(,您是否由于某些同步问题而无法使用跟踪流的结果?

  1. 我刚刚复制了为流依赖项的方 A 生成的 IOU cordapp 的 jar 文件。 这可能是一个错误。

  2. 我在想在生产环境中,我可能无论如何都不想在请求期间阻止,但我想我会试一试。

代码如下:

val signedTx = rpcOps.startTrackedFlow(ExampleFlow::Initiator, iouValue, otherParty).returnValue.getOrThrow()
ResponseEntity.status(CREATED).body("Transaction id ${signedTx.id} committed to ledger.n")

目前,事务从上面的第一行代码开始就很好,但我在下一行得到了一个堆栈跟踪,其中包括从 signedTx 中获取 id。

java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Unknown constant pool tag [I@576ae80a in classfile module-info.class (element size unknown, cannot continue reading class. Please report this on the FastClasspathScanner GitHub page.
    at io.github.lukehutch.fastclasspathscanner.FastClasspathScanner.scan(FastClasspathScanner.java:1408) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
    at io.github.lukehutch.fastclasspathscanner.FastClasspathScanner.scan(FastClasspathScanner.java:1439) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
    at io.github.lukehutch.fastclasspathscanner.FastClasspathScanner.scan(FastClasspathScanner.java:1462) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
    at net.corda.nodeapi.internal.serialization.amqp.AbstractAMQPSerializationScheme$Companion$customSerializers$2.invoke(AMQPSerializationScheme.kt:41) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.amqp.AbstractAMQPSerializationScheme$Companion$customSerializers$2.invoke(AMQPSerializationScheme.kt:35) ~[corda-node-api-corda-3.0.jar:na]
    at kotlin.SynchronizedLazyImpl.getValue(Lazy.kt:131) ~[kotlin-stdlib-1.2.21.jar:1.2.21-release-88 (1.2.21)]
    at net.corda.nodeapi.internal.serialization.amqp.AbstractAMQPSerializationScheme$Companion.getCustomSerializers(AMQPSerializationScheme.kt) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.amqp.AbstractAMQPSerializationScheme$Companion.access$getCustomSerializers$p(AMQPSerializationScheme.kt:35) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.amqp.AbstractAMQPSerializationScheme.registerCustomSerializers(AMQPSerializationScheme.kt:87) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.amqp.AbstractAMQPSerializationScheme.getSerializerFactory(AMQPSerializationScheme.kt:118) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.amqp.AbstractAMQPSerializationScheme.deserialize(AMQPSerializationScheme.kt:122) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.SerializationFactoryImpl$deserialize$1$1.invoke(SerializationScheme.kt:111) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.core.serialization.SerializationFactory.withCurrentContext(SerializationAPI.kt:66) ~[corda-core-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.SerializationFactoryImpl$deserialize$1.invoke(SerializationScheme.kt:111) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.SerializationFactoryImpl$deserialize$1.invoke(SerializationScheme.kt:86) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.core.serialization.SerializationFactory.asCurrent(SerializationAPI.kt:80) ~[corda-core-corda-3.0.jar:na]
    at net.corda.nodeapi.internal.serialization.SerializationFactoryImpl.deserialize(SerializationScheme.kt:111) ~[corda-node-api-corda-3.0.jar:na]
    at net.corda.core.transactions.SignedTransaction.getCoreTransaction(SignedTransaction.kt:272) ~[corda-core-corda-3.0.jar:na]
    at net.corda.core.transactions.SignedTransaction.getId(SignedTransaction.kt:55) ~[corda-core-corda-3.0.jar:na]
Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Unknown constant pool tag [I@5c774621 in classfile module-info.class (element size unknown, cannot continue reading class. Please report this on the FastClasspathScanner GitHub page.
    at io.github.lukehutch.fastclasspathscanner.utils.InterruptionChecker.executionException(InterruptionChecker.java:74) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
    at io.github.lukehutch.fastclasspathscanner.utils.WorkQueue.runWorkLoop(WorkQueue.java:142) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
    at io.github.lukehutch.fastclasspathscanner.utils.WorkQueue$1.call(WorkQueue.java:99) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
    at io.github.lukehutch.fastclasspathscanner.utils.WorkQueue$1.call(WorkQueue.java:96) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_144]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_144]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_144]
    ... 1 common frames omitted
    Suppressed: java.lang.RuntimeException: Called close() before completing all work units
        at io.github.lukehutch.fastclasspathscanner.utils.WorkQueue.close(WorkQueue.java:194) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
        at io.github.lukehutch.fastclasspathscanner.scanner.Scanner.call(Scanner.java:384) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
        at io.github.lukehutch.fastclasspathscanner.scanner.Scanner.call(Scanner.java:59) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
        ... 4 common frames omitted
    Suppressed: java.lang.RuntimeException: Unreleased instances: 3
        at io.github.lukehutch.fastclasspathscanner.utils.Recycler.close(Recycler.java:69) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
        at io.github.lukehutch.fastclasspathscanner.scanner.Scanner.call(Scanner.java:384) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
        at io.github.lukehutch.fastclasspathscanner.scanner.Scanner.call(Scanner.java:59) ~[fast-classpath-scanner-2.0.21.jar:2.0.21]
        ... 4 common frames omitted

这是一个在 Corda 3.1 中修复的错误。

这是由于 Corda 3.0 使用的FastClasspathScanner库版本中的错误。

最新更新