35
votes

I am trying to install the ADT plugin for Eclipse. However, after I have went to "Install New Software..." and entered the plugin location https://dl-ssl.google.com/android/eclipse/, "Pending..." is displayed. It does not change to "Developer Tools" no matter how long I wait. (I have also tried "http://dl-ssl.google.com/android/eclipse/)

To get around this I tried downloading the current ADT Plugin zip file, but this does not work either. "Developer Tools" appears, but when I click "Next" it does not move past "Calculating requirements and dependencies."

Please provide a solution to the problem of either approach. Thanks.

12
Does anything show up in Eclipse' log?Farray
I just installed Eclipse(3.7.1 classic),downloaded ADT and installed it to Eclispse this morning. I didn't find any problem. Can you show us the log from Eclipse so we won't guess what happened.Huang
@Huang Log and other info posted on gistGreg Bacon
@GregBacon I see a java.net.SocketTimeoutException: Read timed out error in the log, so I believe this problem is related to the network. Have you tried within another network?Huang
@Huang No, this is from a home network connected to residential broadband. Why would Eclipse be able to connect to dl.google.com but not download.eclipse.org?Greg Bacon

12 Answers

47
votes

I had the same problem. It started working when I unchecked the box labeled "Contact all update sites during install to find required software".

12
votes
  1. Goto Preferences->Network Connections and set the correct option (native/direct as per your proxy settings on your network) restart eclipse and try again. [Switching to direct worked for me at home, however in office i had to configure it to native..] (Proxy settings require restart of eclipse IDE on some machines to take effect)
  2. Ensure that your eclipse has all android toolkit dependencies (wst/emf...) installed (http://developer.android.com/resources/faq/troubleshooting.html#installeclipsecomponents)
4
votes

Update

The logged error you provided leads to Install from updatesite hangs under Java 7 and in turn Eclipse Bug 362741 - downloads from update sites hang - (3.7.1 Indigo SR1 windows), see comment 6 specifically (you already applied comment 7).

Please note that while this seems to be a JDK 7 problem at first sight, the linked Java Bug 7077696 - java.net.Socket closes when "PASV" is sent on an authenticated FTP connection classifies the issue as a REGRESSION. Last worked in version 6u26, while you are using 6u30 already. Accordingly, the issue is reported to be fixable by switching to Java 6 elsewhere (implying an earlier version), see e.g. Cannot do any software installs using jdk1.7.0_01 (which uses 6u22):

However, everything works right if I then change the eclipse.ini to change the vm to JDK 1.6:

-vm C:\Java\jdk1.6.0_22\bin\javaw.exe

Oracle's Evaluation concludes, that This does not appear to be a JDK bug, rather it's just the Windows firewall recognizing and blocking the ftp protocol.:

The only difference between JDK7 and older releases is that the JDK is using IPv6 sockets when IPv6 is enabled and so IPv4-mapped IPv6 addresses are used. it may be that Windows or the firewall is not configured to allow IPv6 sockets. [...]

Accordingly, they list a Workaround as well:

Run with -Djava.net.preferIPv4Stack=true

  • add a firewall exception for the Java binary.

  • run with -Djava.net.preferIPv4Stack=true (which disables IPv6 and uses AF_INET sockets exclusively)

  • or disable stateful FTP inspection in the firewall (registry setting or netsh command)

The firewall adjustment seems to be a confirmed workaround as per comment #4 in Socket Exception only in Java 7 (though simply turning it off like there should be handled with care of course).

Good luck!


Presumably you are already aware of Robamaton's answer to Eclipse, Android Plug-in, Install New Software just says “pending” (there are many ADT related questions and strangely it didn't show up immediately in a respective search)? It basically comes down to Codejammer's hint towards Preferences->Network Connections (+1), though with an explanation why it might still fail on your network regardless, see the comments:

Oh, I read that it doesn't respond to general requests from browsers. In any case, network admin confirms it's making a socks connection, but then doing nothing further.

and

Ok, further to previous comment, it's probably trying to connect via. socks 5 - but our network only has socks 4. Admin is going to run the 5 version to see if it then works.

Workaround

Regardless of whether the socks 4 vs. socks 5 proxy settings are actually the problem, a potential workaround might be to install Eclipse and ADT on a different system (ideally on a different network), and copy the resulting folder to yours thereafter (after all, an Eclipse installation is simply a collection of files).

When doing so, please ensure to match 32- vs. 64-bit regarding both the JDK and Eclipse between the source and the target system, because a mismatch would yield other problems (see e.g. my answer to Failed to load the JNI shared library on starting Eclipse).

3
votes

What versions of eclipse are you using?

In Helios I was able to install the plugin by going to Help -> Eclipse MarketPlace -> Yoxos MarketPlace (Second Icon at the bottom) and search for ADT and install.

2
votes

If you were unable to get network update working, please try downloading the ADT zip package and installing locally as the download page says.

http://developer.android.com/sdk/eclipse-adt.html

2
votes

I find these google sites very difficult to connect with from certain networks, but not from others. Here in Germany, I had terrible trouble going through Alice, but none going through Deutsche Telekom.

Sometimes I could reach the dl-ssl host from Alice, but in some later operation it would hang then time out. A day or so later, I might be able to make a connection again. Some people say they had luck going through a proxy, or by changing "http" to "https". I also saw this.

Here's what I think is going on.

First, Eclipse is miserably buggy, and handles unexpected situations very badly (for example, catching all exceptions, but failing to provide the exception's message!!), particularly when it comes to unresponsive links. It reminds me of the stock story of the mentally disturbed psychiatrist.

It looks as though the google server is badly configured, possibly as a naive protection mechanism meant to repel denial-of-service attacks: it only handles a few connection requests within a certain time frame from hosts certain networks, and if it gets too many requests, it locks out connections with the host for a long time.

Unfortunately, a single Eclipse update might require many connections in rapid succession; somebody unsure of how to configure Eclipse the first time will likely trip the Google booby-trap.

In my case, I was able to download what I needed by carefully choosing a subset of the available software, being very patient, and if I got locked out, just waiting a day until it let me in again.

Cheers!

0
votes

I had the same problem and it was driving me nuts. I kept trying for a couple of hours--getting the same error message--and at once it worked! So if I were you I'd just leave it for a bit and come back in a couple of hours and try again. There are several other suggested solutions online that I found, but neither of those seemed to make a difference.

0
votes

I've faced with the same problem before. In my case this was a problem that I was working under the proxy. I think you also work behind a proxy.

I've solved this problem in the following way. Find the SDKManager.exe and run it. In this program find proxy configuration and fill it there. Then from this program try to update your SDK (maybe this will require you to restart this program).

I do not know why but Eclipse proxy configuration is not working in case of Android ADT.

P.S. You have to use JDK 6 (or 5), not JDK 7!!!

0
votes
0
votes

The only answer I found out when I got this problem was to download the latest 'Eclipse Indigo for Java', updating the ADT and android SDK. After few hours, everything was normal.

0
votes

Turning off IPv6 worked for me.

0
votes

In my case I use proxy setting, and I follow the instruction of this post. But just one small modification: the SOCKETS setting should be clear and empty as suggested by here