Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 179270

Summary: org.eclipse.jdt.core_3.3.0.v_735.jar is invalid on Europa M6 Discovery Site
Product: [Eclipse Project] Platform Reporter: Robert Munteanu <robert.munteanu>
Component: RelengAssignee: Kim Moir <kim.moir>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: P3 CC: aniefer, cross-project.inbox, daniel_megert, mober.at+eclipse
Version: 3.3   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Bug Depends on: 178884, 180046    
Bug Blocks: 175284    

Description Robert Munteanu CLA 2007-03-26 06:01:41 EDT
Build ID: I20070323-1616

Steps To Reproduce:
1. Download 3.3M6 Platform Runtime Binary for Linux/GTK (http://download.eclipse.org/eclipse/downloads/drops/S-3.3M6-200703231616/download.php?dropFile=eclipse-platform-3.3M6-linux-gtk.tar.gz)
2. Start eclipse
3. Go to help -> find and install -> search for new features -> europa discovery site -> java development -> jdt
4. Install the updates

The update process will fail with the below stack trace:

java.util.zip.ZipException: error in opening zip file
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:203)
at java.util.jar.JarFile.<init>(JarFile.java:132)
at java.util.jar.JarFile.<init>(JarFile.java:112)
at org.eclipse.update.internal.jarprocessor.JarProcessor.processJar(JarProcessor.java:303)
at org.eclipse.update.internal.core.FeaturePackagedContentProvider.retrieveLocalJar(FeaturePackagedContentProvider.java:256)
at org.eclipse.update.internal.core.FeaturePackagedContentProvider.getPluginEntryArchiveReferences(FeaturePackagedContentProvider.java:179)
at org.eclipse.update.internal.operations.UpdateUtils.downloadFeatureContent(UpdateUtils.java:628)
at org.eclipse.update.internal.ui.wizards.InstallWizard2.download(InstallWizard2.java:426)
at org.eclipse.update.internal.ui.wizards.InstallWizard2.access$3(InstallWizard2.java:397)
at org.eclipse.update.internal.ui.wizards.InstallWizard2$3.run(InstallWizard2.java:350)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)


More information:
This was reproduced on two different mirrors, both yesterday and today.
Comment 1 Denis Roy CLA 2007-03-26 08:31:38 EDT
Reassigning to cross-project
Comment 2 Nick Boldt CLA 2007-03-26 14:27:17 EDT
This sounds more like a JDT or Platform > Update Manager issue (signed jars on Linux, anyone? (bug 175284)). I'll bounce it to JDT first for comments (where it will no doubt bounce back to UM).

Robert: what JDK are you using? Which linux distro? Probably not relevant, but this *might* be an issue w/ Eclipse finding something old and flaky like Blackdown 1.4 instead of Sun 5.0 or 6.0 as its default runtime. (If you're a debian/*ubuntu person, you can get Sun & IBM 5.0 as .deb installs from http://medibuntu.sos-sts.com/packages.php). Very handy, IMHO.
Comment 3 Kim Moir CLA 2007-03-26 14:42:53 EDT
Nick, the jdt core team doesn't administer our update site, the releng team does :-)

Robert,
Eclipse 3.3M6 for Europa is not released yet.  So I wouldn't advise using platform M6 and updating trying to update to the content in Europa. The current Europa content is based on M5.  I'll see if there is documentation on the Europa page regarding this, if there isn't I'll ask them to update it or improve our process.  This is not intuitive to the end user.

I'll also look at the jar and see if there is an issue.
Comment 4 Robert Munteanu CLA 2007-03-26 18:14:37 EDT
Ref #2: 

Nick, I use 

java version "1.6.0"
Java(TM) SE Runtime Environment (build 1.6.0-b105)
Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)

and OpenSUSE 10.2 with kernel 2.6.18.8-0.1-default

Ref #3:

Thank you for the information Kim. I expected that once the update site

a) is visible from the update manager
b) provides updates

it should simply work. I was not aware of the update site/platform not being in sync, which, as you stated, is counter-intuitive.
Comment 5 Kim Moir CLA 2007-03-28 15:43:21 EDT
Robert, thank you for reporting this problem.  I have replicated the same problem in our lab.

If I unpack the jar and then verify it, here is the error

-bash-3.00$ /builds/tools/jdk/linuxppc/ibm-java2-ppc-50/jre/bin/unpack200 org.eclipse.jdt.core_3.3.0.v_735.jar.pack.gz y.jar

-bash-3.00$ /builds/tools/jdk/linuxppc/ibm-java2-ppc-50/bin/jarsigner -verify y.jar
jarsigner: java.lang.SecurityException: SHA1 digest error for org/eclipse/jdt/core/dom/MemberRef.class

Andrew, perhaps this is another manifestation of bug 175284
The jdt.core from M5 (v_735)
has an eclipse.inf in the antadapter directory with 
jarprocessor.exclude.sign=true
perhaps they should also have
jarprocessor.exclude.children=true in the same eclipse.inf

Please confirm and I'll open a bug with jdtcore with a patch.
Comment 6 Kim Moir CLA 2007-03-29 14:20:26 EDT
temporary fix in bug 180046 
permanent fix when bug 178884 is resolved
Comment 7 Kim Moir CLA 2007-04-05 17:03:26 EDT
Veriried that this is not an issue with current builds - tried updating from M6 to  latest integration build without an issue on Linux with jdk 1.6.
Comment 8 Martin Oberhuber CLA 2007-04-11 07:29:25 EDT
Seen the same issue on WinXP, Sun 1.4.2_13 and Linux RHEL4, Sun 1.6.0_01.

Effectively, taking eclipse-platform-3.3M6 and then getting JDT from the M6 Europa Discovery Site is not possible.

We should perhaps advise everybody to start off with eclipse-SDK instead of Platform, until the fix is published to Europa (when I got the comments right, a fix does exist already in recent Platform I-builds).

Comment 9 Dejan Glozic CLA 2007-04-11 09:40:43 EDT
I tried to do the same yesterday with the latest integration build I20070410 with the same result - JDT install fails due to verification errors.

Is there any hope to fix this soon? We need this working to test new feature content notification in Welcome.
Comment 10 Kim Moir CLA 2007-04-11 09:49:02 EDT
Dejan, are you saying that you used M6 platform and tried to update to I20070410 and had the same issue?
Comment 11 Andrew Niefer CLA 2007-04-26 11:22:30 EDT
I20070424-0930 was built with an updated jarprocessor (see bug 183035).

I was able to successfully update from SDK-I20070418-1012 to I20070424-0930 on windows.
As well as from platform-I20070424-0930 to SDK-I20070424-0930 on windows, and on linux with an IBM 1.6 jvm..

All known issues should be resolved, can others verify this?
Comment 12 Martin Oberhuber CLA 2007-04-27 03:30:57 EDT
Thanks Andrew, your tests seem to be good.
I can verify the original issue once the contents is on the Europa M7 Staging site, if that helps. Remind me again in case I should forget.
Comment 13 Kim Moir CLA 2007-06-14 11:40:26 EDT
Closing, please reopen if this is still an issue.
Comment 14 Nick Boldt CLA 2007-06-14 14:48:28 EDT
(In reply to comment #13)
> Closing, please reopen if this is still an issue.

Verified, using IBM JDK 5.0, Platform Binary RC4 (linux-gtk) and Europa Update site (Ottawa Fullmoon mirror), I was able to install GMF and all its dependencies (including pde, jdt, gef, ocl, uml2, emf, emf-qtv, to a total of 14 updates).
Comment 15 Kim Moir CLA 2007-06-14 16:42:30 EDT
Thanks Nick.
Comment 16 Kim Moir CLA 2007-06-19 15:07:09 EDT
.