Bug 198572 - eclipse does not respect class-path manifest of external jars
Summary: eclipse does not respect class-path manifest of external jars
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.2.2   Edit
Hardware: PC Windows XP
: P3 enhancement (vote)
Target Milestone: 3.5 M3   Edit
Assignee: Jerome Lanneluc CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-08-01 15:00 EDT by benson margulies CLA
Modified: 2022-08-01 15:54 EDT (History)
7 users (show)

See Also:


Attachments
Proposed fix and regression tests (57.87 KB, patch)
2008-10-07 09:26 EDT, Jerome Lanneluc CLA
no flags Details | Diff
Proposed fix and regression tests (57.87 KB, patch)
2008-10-07 09:31 EDT, Jerome Lanneluc CLA
no flags Details | Diff
Proposed fix and regression tests (57.84 KB, patch)
2008-10-07 09:51 EDT, Jerome Lanneluc CLA
no flags Details | Diff
Improved fix and same regression tests (62.75 KB, patch)
2008-10-08 07:25 EDT, Jerome Lanneluc CLA
no flags Details | Diff
Same fix and improved tests (61.33 KB, patch)
2008-10-08 09:49 EDT, Jerome Lanneluc CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description benson margulies CLA 2007-08-01 15:00:51 EDT
Build ID: Build id: M20070212-1330

Steps To Reproduce:
1. add an external jar to a classpath of a project where the jar has a manifest with a Class-Path:
2. Observe that Eclipse does not treat the jars listed on that classpath as part of the project's classpath.
3.


More information:

You might reclassify this as an enhancement, but I offer the thought that this makes it quite hard to import existing code that depends on the manifest classpath.
Comment 1 Maxime Daniel CLA 2007-08-02 04:46:22 EDT
We are investigating that with bug 97332, closing as duplicate.

*** This bug has been marked as a duplicate of bug 97332 ***
Comment 2 Maxime Daniel CLA 2008-05-05 03:16:50 EDT
Bug 97332 ended up addressing the batch compiler story only.
Reopening.
Comment 3 Mario Rodrigues CLA 2008-05-05 12:17:05 EDT
The problem I am having is that with Eclipse 3.3 (with WTP 2.0 and WebLogic 10.0), the compile time classpath cannot find the classes under BEA_HOME/modules even with weblogic.jar in the build path.  

This is because Eclipse seems to ignore the manifest file in weblogc.jar that has classpath entries to "BEA_HOME\modules\features\weblogic.server.modules_10.0.0.0.jar" …… which in turn has manifest entries that point to 60+ jars under the modules dir. 

As a large govt. agency that uses Eclipse extensively and has a standard Java/Eclipse desktop, this bug is now making us evaluate different options (such as using the WebLogic plugin, creating a domain template, including 50+ jars in the build path, etc.). We would really appreciate it if the priority on this bug could be elevated.
Comment 4 Philipe Mulet CLA 2008-05-05 12:34:49 EDT
It is too late for 3.4 as we have entered the final development stage.
Earliest would be targeting 3.5.
Comment 5 Philipe Mulet CLA 2008-09-10 06:58:55 EDT
M3 target for a solution based on multiple resolved pkg fragment roots from a JAR classpath entry. Note that it needs to apply to container entries too.
Comment 6 Jerome Lanneluc CLA 2008-10-07 09:26:17 EDT
Created attachment 114413 [details]
Proposed fix and regression tests
Comment 7 Jerome Lanneluc CLA 2008-10-07 09:31:14 EDT
Created attachment 114414 [details]
Proposed fix and regression tests

Retry since first attachment seems corrupt
Comment 8 Jerome Lanneluc CLA 2008-10-07 09:51:24 EDT
Created attachment 114417 [details]
Proposed fix and regression tests

Create patch was creating a corrupt file (see bug 249954)
Comment 9 Jerome Lanneluc CLA 2008-10-08 07:25:04 EDT
Created attachment 114534 [details]
Improved fix and same regression tests
Comment 10 Jerome Lanneluc CLA 2008-10-08 09:49:24 EDT
Created attachment 114548 [details]
Same fix and improved tests
Comment 11 Jerome Lanneluc CLA 2008-10-09 04:14:38 EDT
Fix and tests released for 3.5M3
Comment 12 Olivier Thomann CLA 2008-10-27 15:28:20 EDT
Verified for 3.5M3 using I20081026-2000.
Seems to work, but all entries are displayed using the entry of the original jar that contains the Class-Path: entry in the MANIFEST.MF file.
This makes it really difficult to know what jar corresponds to what entry in the Class-Path: directive.
Comment 13 Jerome Lanneluc CLA 2008-10-29 10:38:57 EDT
(In reply to comment #12)
> Seems to work, but all entries are displayed using the entry of the original
> jar that contains the Class-Path: entry in the MANIFEST.MF file.
> This makes it really difficult to know what jar corresponds to what entry in
> the Class-Path: directive.
See bug 252591