Bug 465593 - Installation prevents resolution of previously resolved bundles (-clean helps => wiring solution exists)
Summary: Installation prevents resolution of previously resolved bundles (-clean helps...
Status: RESOLVED WORKSFORME
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: Framework (show other bugs)
Version: 3.10.1 Luna   Edit
Hardware: PC Mac OS X
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: equinox.framework-inbox CLA
QA Contact:
URL:
Whiteboard: stalebug
Keywords:
: 451370 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-04-27 10:25 EDT by Andreas Sewe CLA
Modified: 2019-08-30 10:48 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Sewe CLA 2015-04-27 10:25:43 EDT
To reproduce (tested under both Windows 7 and Mac OS X):

Note: All installations have been run with “Contact all update sites” *disabled* to ensure that the installed bundles come from the update site in question.

- Install a fresh "Eclipse IDE for Java EE Developers" for Luna SR1 from [1].

- Install "Plug-In Development Tools" from [2] (note: only required for debugging, not to reproduce the error)

- Verify in the Host OSGi Console that all m2e bundles are resolved: "ss m2e"

- Install "SonarQube Java Analyser" from [3].

- Verify in Host OSGi Console that all m2e bundles and SonarQube bundles are resolved: "ss m2e" and "ss sonar".

- Install from the Xpand "All-In-One Update Site" (needs to be downloaded as ZIP [4]) all features in the "M2T Xpand 1.0.1 R201008251147” category. Here, Eclipse will refuse to install “Xpand SDK” and “Xpand Incremental Generation” but will otherwise install everything in version *1.0.1.v201008251147*.

- Do "ss m2e" in the Host OSGi Console again. Many previously RESOLVED bundles are now INSTALLED only. Thus should not happen, IMHO.

- Open the "Maven Repositories" view. This results in an exception very similar to Bug 451370 (I suspect that bug has the same root cause as this one.):

  java.lang.IncompatibleClassChangeError: Class ch.qos.logback.classic.LoggerContext does not implement the requested interface org.slf4j.ILoggerFactory

Even though org.eclipse.m2e.core could still be resolved, an unstated uses constraint is violated at runtime.

- Restart Eclipse with -clean

- All bundles now resolve just fine, showing that a wiring solution exists without uses constraint violations.

FWIW, the above steps did not cause the errors (INSTALLED bundles and IncompatibleClassChangeError) when using Mars M6. I am not sure, however, whether this is because m2e 1.6 (shipped with Mars) changed some things compared to m2e 1.5 (shipped with Luna SR1) or whether this bug was fixed in Equinox since then.

[1] <https://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/lunasr1>
[2] <http://download.eclipse.org/releases/luna>
[3] <http://dist.sonar-ide.codehaus.org/eclipse/>
[4] <http://www.eclipse.org/modeling/download.php?file=/modeling/m2t/xpand/downloads/drops/1.0.1/R201008251147/m2t-xpand-Update-1.0.1.zip>
Comment 1 Andreas Sewe CLA 2015-04-27 10:29:58 EDT
*** Bug 451370 has been marked as a duplicate of this bug. ***
Comment 2 Andreas Sewe CLA 2015-04-27 11:45:15 EDT
(In reply to Andreas Sewe from comment #0)
> FWIW, the above steps did not cause the errors (INSTALLED bundles and
> IncompatibleClassChangeError) when using Mars M6. I am not sure, however,
> whether this is because m2e 1.6 (shipped with Mars) changed some things
> compared to m2e 1.5 (shipped with Luna SR1) or whether this bug was fixed in
> Equinox since then.

I tried this with the Mars M6 Committers package [1] (doesn't contain m2e). I then manually installed m2e 1.5 from [2] (requires enabling "contact all update" sites. Thereafter, I installed SonarQube Analysis for Java and then Xpand 1.0.1. Everything resolves fine.

However, even with Mars M6, there's a situation where bundles do not resolve and only a "-clean" can fix things: Install SonarQube Analysis for Java first and only then m2e 1.5. This leaves most of the m2e bundles in the INSTALLED state. Again, "-clean" fixes this.

Hope this helps in assessing whether this is something that needs to be fixed for Mars.

[1] <https://www.eclipse.org/downloads/packages/eclipse-ide-eclipse-committers-450-m6/marsm6>
[2] <http://download.eclipse.org/technology/m2e/releases/1.5/>
Comment 3 Thomas Watson CLA 2015-04-27 12:09:33 EDT
I need to go through the scenario but I suspect it could be related to bug 449365.
Comment 4 Andreas Sewe CLA 2015-04-27 12:55:58 EDT
(In reply to Thomas Watson from comment #3)
> I need to go through the scenario but I suspect it could be related to bug
> 449365.

Hi, Thomas. Thanks for looking into this. And thanks for the pointer as well, although I am afraid what exactly your description of Bug 449365 means...
Comment 5 Eclipse Genie CLA 2019-08-29 19:57:51 EDT
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.

--
The automated Eclipse Genie.
Comment 6 Thomas Watson CLA 2019-08-30 10:48:25 EDT
I don't recall if I ever looked at this scenario in detail.  I'm doubtful because I usually at least report back some kind of status if I did.  It is many years later now so probably not fruitful to go digging up the recreation scenario with the present release (if that is even possible).  I'm going to close as worksforme, but please reopen, or open a new bug if similar issues are still a problem.