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

Bug 330795

Summary: Regression: "Error reading manifest" for source bundles when creating a target platform based on running Eclipse
Product: [Eclipse Project] PDE Reporter: Martin Oberhuber <mober.at+eclipse>
Component: UIAssignee: PDE-UI-Inbox <pde-ui-inbox>
Status: RESOLVED INVALID QA Contact:
Severity: major    
Priority: P3 CC: tjwatson
Version: 3.7   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Martin Oberhuber CLA 2010-11-22 07:59:18 EST
Build ID: I20101116-0800

1. Preferences : Plug-in Development : Target Platform
2. Add... 
   - Start with: Default target for running Platform

--> The dialog shows "Error reading manifest" for each source bundle in the 
    target Platform.

I assume that this might be due to the recent OSGi change for strict matching of attributes as per 
   http://dev.eclipse.org/mhonarc/lists/cross-project-issues-dev/msg04898.html
applied to this kind of markup:
   Eclipse-SourceBundle: org.eclipse.compare.core;version="3.5.200.I20101
 102-0800";roots:="."

this might require a "bundle-version" markup, so PDE build might need to be updated; and, on the UI side, "error reading Manifest" is not a proper behavior at any rate since even the updated tooling must be able to peacefully work on old-style targets which do not match OSGi attributes properly.
Comment 1 Martin Oberhuber CLA 2010-11-22 08:40:33 EST
Problem went away after deleting configuration/ and p2/ folders and restarting. Looks like p2 had not properly picked up all new bundle versions when I upgraded Eclipse while re-using my previous configuration area.

My workspace is still a bit messed up though... there's 5 bundles which claim "build path incomplete... cannot find the class for o.e.core.resources.IProject... indirectly referenced from required .class files"

Now these 5 bundles don't depend on core.resources directly, but they depend on o.e.rse.ui which depends on o.e.core.resources so I'd claim that the build path must be correct. Plus, the same workspace used to work without problems with earlier versions of Eclipse. I didn't manage to fix this by any means, not even physically deleting respective bundles and re-importing from CVS.
Comment 2 Thomas Watson CLA 2010-11-28 22:49:06 EST
(In reply to comment #0)
> Build ID: I20101116-0800
> 
> 1. Preferences : Plug-in Development : Target Platform
> 2. Add... 
>    - Start with: Default target for running Platform
> 
> --> The dialog shows "Error reading manifest" for each source bundle in the 
>     target Platform.
> 
> I assume that this might be due to the recent OSGi change for strict matching
> of attributes as per 
>    http://dev.eclipse.org/mhonarc/lists/cross-project-issues-dev/msg04898.html
> applied to this kind of markup:
>    Eclipse-SourceBundle: org.eclipse.compare.core;version="3.5.200.I20101
>  102-0800";roots:="."
> 
> this might require a "bundle-version" markup, so PDE build might need to be
> updated; and, on the UI side, "error reading Manifest" is not a proper behavior
> at any rate since even the updated tooling must be able to peacefully work on
> old-style targets which do not match OSGi attributes properly.

Eclipse-SourceBundle: is a PDE specific header and the "version" attribute is correct.  So that should not be the cause of this issue.