我安装了 WordnetSimilarity server在我的Ubuntu上。 我使用以下命令启动它:
$ similarity_server.pl --logfile server.log
现在我想从我的 Java/Groovy 应用程序中使用它,我编写了以下代码来获取服务器版本:
// open connection
Socket kkSocket = new Socket("localhost", 31134);
def out = new PrintWriter(kkSocket.getOutputStream(), true);
def inbuf = new BufferedReader(new InputStreamReader(kkSocket.getInputStream()));
out.write("v") // command for the server
out.write("\015\012") // end of message
out.flush()
// so far so good
println inbuf.readLine()
// no response, hanging...
没有任何反应,服务器日志为空。服务器协议(protocol)定义如下:http://search.cpan.org/~tpederse/WordNet-Similarity-2.05/utils/similarity_server.pl
服务器肯定正在运行,因为如果我停止它,套接字分配就会失败。
有什么提示吗?
干杯,穆龙
最佳答案
看起来应该可以工作。我怀疑服务器有问题。一些值得尝试的事情:
- 是否有任何其他客户端可以用来查看服务器是否正确响应?
- 服务器是否有“详细”输出选项?
- 服务器是否能够通过互联网连接访问所需的任何资源,例如 WordNet?
- 您可以调试服务器进程吗?
- 在客户端上,您可以尝试一次读取一个字符。
关于java - Wordnet::相似度服务器:如何从 Java 与其对话?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7786094/