我有一个java程序Read
,它从URL读取文件如下所示:
file://myhost/system.log
在Windows上我使用此命令:
java Read "file://myhost/system.log"
它完美无瑕。
但是在Linux上,当我尝试使用相同的命令时,它会给我这个错误:
Exception in thread "main" java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.ftp.impl.FtpClient.doConnect(Unknown Source)
at sun.net.ftp.impl.FtpClient.tryConnect(Unknown Source)
at sun.net.ftp.impl.FtpClient.connect(Unknown Source)
at sun.net.ftp.impl.FtpClient.connect(Unknown Source)
at sun.net.www.protocol.ftp.FtpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(Unknown Source)
at java.net.URL.openStream(Unknown Source)
at read.readInput(ReadHTML.java:53)
at read.readInput.main(ReadHTML.java:76)
有什么想法吗?
更新:
我想我发现了这个问题:
myhost
未安装在Linux计算机上,因此无法使用file://...
感谢所有答案,伙计们!
答案 0 :(得分:2)
这是因为您的程序(通过在Linux OS上使用file
URL)尝试打开与URL中指定的主机的FTP连接。建立FTP连接失败。
这可能是由于各种各样的问题。尝试直接连接ftp:
ftp myhost
而且我猜它也会失败。你安装了FTP服务器吗?运行
答案 1 :(得分:0)
可能的原因之一是hosts.allow没有您的计算机的输入。
答案 2 :(得分:0)
我怀疑你只需要第三个/。文件uris的正确语法是file:// [path],但[path]应以/.
开头