12

如何更改 Eclipse 更新管理器的“读取超时”值?

我的互联网连接速度很慢,无法安装任何插件,因为 Eclipse 的更新管理器向我抛出异常:

Transfer Exception

java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(Unknown Source)
at java.io.BufferedInputStream.read1(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at org.apache.commons.httpclient.ContentLengthInputStream.read(ContentLengthInputStream.java:170)
at java.io.FilterInputStream.read(Unknown Source)
at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:108)
at java.io.FilterInputStream.read(Unknown Source)
at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:127)
at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer$1.performFileTransfer(AbstractRetrieveFileTransfer.java:140)
at org.eclipse.ecf.filetransfer.FileTransferJob.run(FileTransferJob.java:73)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) 
4

5 回答 5

18

正如弗兰克所说,您可以在 eclipse.ini 中设置超时选项,这是文档

“使用 -DpropName=propValue 作为 Java VM 的 VM 参数,在相应配置区域的 config.ini 文件中设置所需的属性”

我设置了以下内容来解决我的超时问题:

-Dorg.eclipse.ecf.provider.filetransfer.retrieve.closeTimeout=3000
-Dorg.eclipse.ecf.provider.filetransfer.retrieve.readTimeout=3000
于 2011-01-04T12:16:21.847 回答
14

我在 3.6 版中遇到了很多错误,但是在 eclipse.ini 中添加以下行对我有很大帮助:

-Dsun.net.client.defaultReadTimeout=30000

在 -vmargs 行之后添加它

于 2010-08-04T07:45:43.557 回答
0

解决此问题的最简单方法是下载.jar您尝试安装的插件文件并执行脱机安装。

编辑:我试图找到一个操作方法的链接,但eclipse.org一直超时。

于 2009-09-28T20:25:56.867 回答
0

我相信您在推出 3.5.1 期间遇到了这些超时问题。Eclipse.org 在此期间有几个服务器和镜像问题,这导致许多人在尝试更新时遇到超时。

以后遇到此类问题时,可以尝试从特定镜像安装。我发现即使没有 Eclipse.org,从这里安装也能正常工作:

http://eclipse.unixheads.org/

于 2009-10-10T13:40:59.530 回答
0

超时不是原因,它只是症状,更新站点中可能存在“僵尸”条目。

像:

使用僵尸条目更新站点

删除那些具有空“名称”列的内容后,它应该可以工作(更快)。

于 2019-03-20T17:11:44.910 回答