Corda—在单独进程上的内存节点中运行不会';行不通

Corda—在单独进程上的内存节点中运行不会';行不通,corda,Corda,在我的IntelliJ项目中,我有两个模块,它们是CorDapps。我还为每个配置了一个运行配置 运行一个应用程序 运行参与者B CorDapp 运行其中任何一个都会在内存节点上运行CorDapp package com.demo.cordapp.participant_a import net.corda.core.utilities.getOrThrow import net.corda.testing.driver.DriverParameters import net.corda.

在我的IntelliJ项目中,我有两个模块,它们是CorDapps。我还为每个配置了一个运行配置

  • 运行一个应用程序
  • 运行参与者B CorDapp
运行其中任何一个都会在内存节点上运行CorDapp

package com.demo.cordapp.participant_a

import net.corda.core.utilities.getOrThrow
import net.corda.testing.driver.DriverParameters
import net.corda.testing.driver.driver
import net.corda.testing.node.User

class Application {
    companion object {
        @JvmStatic
        fun main(args: Array<String>) {

            val parameters = DriverParameters(
                    isDebug = true,
                    waitForAllNodesToFinish = true,
                    extraCordappPackagesToScan = listOf("com.demo.shared.domain")
            )

            driver(parameters) {

                startNode(
                        providedName = PARTICIPANT_1_NAME,
                        rpcUsers = listOf(User("user1", "test", permissions = setOf("ALL")))
                ).getOrThrow()
            }
        }
    }
}
package com.demo.cordapp.participant\u a
导入net.corda.core.utilities.getOrThrow
导入net.corda.testing.driver.DriverParameters
导入net.corda.testing.driver.driver
导入net.corda.testing.node.User
班级申请{
伴星{
@JvmStatic
趣味主线(args:Array){
val参数=驱动器参数(
isDebug=true,
waitForAllNodesToFinish=true,
extraCordappPackagesToScan=listOf(“com.demo.shared.domain”)
)
驱动程序(参数){
startNode(
providedName=参与者的姓名,
rpcUsers=listOf(用户(“用户1”,“测试”,权限=setOf(“全部”))
).getOrThrow()
}
}
}
}
如果我首先启动参与者A的节点,它可以正常工作,但参与者B会出错,反之亦然。错误如下

线程“main”中出现异常 net.corda.testing.node.internal.listenprocessdea异常: 预期在localhost:10000上侦听的进程已因 现状:2


我的猜测是存在端口冲突,因为它们都试图使用相同的p2p、rpc和web端口?

DriverParameters
有一个
portAllocation
参数,用于确定如何将端口分配给节点

它默认为
PortAllocation.Incremental(10000)
。对于其中一个节点,您应该将其设置为其他值(例如,
PortAllocation.Incremental(20000)


如果您在调试模式下运行,您还需要修改整理端口冲突的
debugPortAllocation

,但我仍然收到错误。您是否也可以尝试修改
debugPortAllocation