Project

General

Profile

Bug #1793

Eclipsoid exposes private refs of referenced project when armed in eclipse

Added by Henning Blohm over 9 years ago. Updated over 9 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
z2-base-tools-eclipsoid
Target version:
-
Start date:
09.07.2014
Due date:
% Done:

0%

Estimated time:
origin:

Description

When

A --(z2 public)--> B --(z2 private)--> C

then

A#armed --(eclipse)--> C#armed

#1

Updated by Henning Blohm over 9 years ago

  • Target version deleted (32)
#3

Updated by Udo Offermann over 9 years ago

  • Status changed from New to In Progress
#4

Updated by Udo Offermann over 9 years ago

The situation were the problem occurs is this:

A and B are armed, while C is not checked out at all. C provides a JAR of an older version of a library while A has its own - newer version - of the same library.

In this case B gets all of C's public jars as library entries (JavaCore.newLibraryEntry(...)).
Even if eclipsoid container is not exported single library entries are visible to dependent projects if the library entry is created with export = true!:


    public static IClasspathEntry newLibraryEntry(
            IPath path,
            IPath sourceAttachmentPath,
            IPath sourceAttachmentRootPath,
            IAccessRule[] accessRules,
            IClasspathAttribute[] extraAttributes,
            boolean isExported
        )

Which version of the mentioned library A gets depends on the order in which the classpath entries are considered.

However the fix is simple: library entries must be created with export = false.

#5

Updated by Udo Offermann over 9 years ago

  • Status changed from In Progress to Resolved

Also available in: Atom PDF