Much ado about scripting, Linux & Eclipse: card subject to change


Troubleshooting Mirrors / Using Profiles & Target Platform Definition Files With Tycho

If you look in the mirror and you say his name 5 times, he'll appear behind you breathing down your neck. - Candyman

If only troubleshooting mirrors was so simple. Have you ever been running a build or an install which stalls at the provisioning step, with a message like:

[INFO] Fetching org.eclipse.birt.integration.wtp.ui_2.6.0.v20100617-1315.jar.pack.gz (4.3MB of 46.13MB at 171.56kB/s) from

The solution here is often simply to force p2 to pick a specific mirror rather than letting it choose any mirror it wants.

How, you ask?

Well, assuming you were polling this site looking for artifacts to install or update...

... you would then change that URL to this, and look at the list of available mirrors:

Now it's a trivial matter to select a mirror that's close to you and try that instead of the mirror, such as:

If you're running a Tycho build, this URL should be changed in your parent-pom.xml ...


... or your .target platform file, depending on which way you're building.

<repository location=""/>

If you rely on a parent-pom.xml, make sure you're activating the profile with the revised URL...

mvn3 clean install -U -B -fae -Phelios

... or, if you're building against a .target platform file, make sure you update the URL in that file, and that your build points to the profile which will load the .target file.

mvn3 clean install -U -B -fae -P!helios,helios-no-target

UPDATE, 2010/08/11: Forgot to mention that there are a number of p2 update site zips available here to help with your offsite mirroring:


Blog comments or spam? No idea.

I don't speak Chinese. Or Korean. Or Japanese. I mention this because lately I've been getting a couple comments per post in a foreign character set, and I can't tell if it's spam or a legit comment.

Please, if you have something to say, stick to English, French, German, or Spanish. Hell, even Latin, lolcode, or twitterspeak. Anything other than that I'll just delete as spam.