当我尝试连接到 tarantool 服务器时,出现以下错误:
线程“主”java.net.ConnectException 中的异常:连接被拒绝:在 java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79) 在 java.net.AbstractPlainSocketImpl 的 java.net.DualStackPlainSocketImpl.connect0(Native Method) 处连接。 doConnect(AbstractPlainSocketImpl.java:350) 在 java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) 在 java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) 在 java.net.PlainSocketImpl.connect(PlainSocketImpl.java :172) 在 java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 在 java.net.Socket.connect(Socket.java:589) 在 java.net.Socket.connect(Socket.java:538) 在 java .net.Socket.(Socket.java:434) 在 java.net.Socket.(Socket.java:211) 在 TarantoolKt.main(Tarantool.kt:37)
我的代码:
class Tarantool {
val client: TarantoolClient
init {
val config: TarantoolClientConfig = TarantoolClientConfig()
config.apply {
username = "test"
password = "test"
}
val socketChannelProvider: SocketChannelProvider = SocketChannelProvider { _, p1 ->
when(p1) {
null -> {
println("Trying to connect . . .")
SocketChannel.open(InetSocketAddress("192.168.1.254", 3301)) // <- error
}
else -> {
p1.printStackTrace(System.out)
null!!
}
}
}
client = TarantoolClientImpl(socketChannelProvider, config)
}
}
fun main(args: Array<String>): Unit {
val client: Tarantool = Tarantool()
println(client.client.isAlive)
}
当我尝试使用不同的 ip 时出现相同的错误
与此处的教程相同:https ://github.com/tarantool/tarantool-java/
我还使用以下命令创建了测试用户:
box.schema.user.create('test', { password = 'test' })
box.schema.user.grant('test', 'execute,read,write', 'universe')
我将 docker 用于 tarantool,我尝试从 Windows 7 cmd ping IP,它可以工作。
谢谢!
解决了