如何更改Eclipse Update Manager的“读取超时”值?

问题描述 投票:12回答:5

如何更改Eclipse Update Manager的“读取超时”值?

我的互联网连接速度慢,我无法安装任何插件,因为Eclipse的Update Manager会抛出异常:

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) 
eclipse plugins equinox
5个回答
17
投票

正如Frank提到的,您可以在eclipse.ini中设置超时选项,这里是documentation

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

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

-Dorg.eclipse.ecf.provider.filetransfer.retrieve.closeTimeout=3000
-Dorg.eclipse.ecf.provider.filetransfer.retrieve.readTimeout=3000

14
投票

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

-Dsun.net.client.defaultReadTimeout=30000

使用-vmargs在行之后添加它


0
投票

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

编辑:我试图找到一个方法的链接,但eclipse.org一直在我身上。


0
投票

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

将来,当您看到这样的问题时,您可以尝试从特定镜像进行安装。我发现即使在Eclipse.org不是这样的情况下,从这里安装往往也能正常工作:

http://eclipse.unixheads.org/


0
投票

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

喜欢:

update sites with zombie entries

删除带有空“name”列的列后,它应该工作(更快)。

© www.soinside.com 2019 - 2024. All rights reserved.