[jbosstools-issues] [JBoss JIRA] (JBDS-4183) Installing from an update site into rpm install causes duplicate IUs to be installed - use constraint violations ensue

Nick Boldt (JIRA) issues at jboss.org
Thu Nov 17 13:04:00 EST 2016


    [ https://issues.jboss.org/browse/JBDS-4183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13324407#comment-13324407 ] 

Nick Boldt commented on JBDS-4183:
----------------------------------

So... with some tweaks to the specfile for the devstudio RPM, I now have a number of working symlinks, which prevent constraint violations for slf4j and httpcomponents.httpclient. 

Steps to verify:

{quote}
1. install from latest rpm
2. Help > Install New > https://devstudio.redhat.com/10.0/snapshots/updates/ *{color:red}NOT from STABLE or Central {color}*
3. uncheck "group items by category"
4. select cordovasim feature (v20161115 or newer)
5. restart when prompted
6. ll ~/.eclipse/org.eclipse.platform_*_linux_gtk_x86_64/plugins

Should not see anything from java.servlet(.api), org.apache.httpcomponents.httpclient(.cache)
But will likely see org.slf4j.api 1.7.2, which is probably OK as it's needed by other *slf4j* jars in the devstudio rpm install

7. install the rpm feature to update everything in devstudio to latest snapshot version from https://devstudio.redhat.com/10.0/snapshots/updates/

8. install all categorized features from https://devstudio.redhat.com/10.0/snapshots/updates/

Result:

{code}#➔ ls .eclipse/org.eclipse.platform_*_linux_gtk_x86_64/{plugins,features} | egrep -v "org.jboss.tools|org.eclipse.thym|org.jboss.ide|hibernate|com.jboss.devstudio"
.eclipse/org.eclipse.platform_283378046_linux_gtk_x86_64/features:
org.eclipse.linuxtools.vagrant.feature_2.1.0.201609141916

.eclipse/org.eclipse.platform_283378046_linux_gtk_x86_64/plugins:
org.apache.commons.lang_2.6.0.v201404270220.jar
org.apache.xml.resolver_1.2.0.v201005080400.jar
org.apache.xml.serializer_2.7.1.v201005080400.jar
org.eclipse.jetty.rewrite_9.3.9.v20160517.jar
org.eclipse.linuxtools.vagrant.core_2.0.0.201609141916.jar
org.eclipse.linuxtools.vagrant.docs_2.0.0.201609141916.jar
org.eclipse.linuxtools.vagrant.ui_2.0.0.201609141916.jar
org.slf4j.api_1.7.2.v20121108-1250.jar{code}

9. install *everything* from central (using the snapshots site in the background - you can verify this by looking for m2e feature -  org.eclipse.m2e.feature.feature.group	 - 1.7.1.20161104-1805, not something older).

10. On restart, Eclipse {color:red}*crashed*{color}... but when I restarted in a fresh workspace, it opened fine, despite some {color:orange}*NPE from ZeroTurnaround*{color} and the *{color:green}expected{color}* "Another singleton bundle selected" warnings caused by Eclipse's inability to remove old singletons from the /opt/rh folder which are also now installed in ~/eclipse/.{quote}

> Installing from an update site into rpm install causes duplicate IUs to be installed - use constraint violations ensue
> ----------------------------------------------------------------------------------------------------------------------
>
>                 Key: JBDS-4183
>                 URL: https://issues.jboss.org/browse/JBDS-4183
>             Project: Red Hat JBoss Developer Studio (devstudio)
>          Issue Type: Bug
>          Components: rpm
>    Affects Versions: 10.2.0.AM3
>            Reporter: Nick Boldt
>            Priority: Blocker
>             Fix For: 10.2.0.GA
>
>         Attachments: install-thym.png, rh-eclipse46-devstudio10.2.log.20161116-1226_strict.txt
>
>
> Steps to repro:
> 1. install from latest rpm, eg., 10.2.0.20161116.1342.el7
> 2. open Central > Software/Update, scroll down until you find the *Maven Integration for Eclipse JDT APT (m2e-apt)* connector
> 3. Install it. When prompted to restart, shut down Eclipse and check in your ~/.eclipse folder:
> {code}
> $➔ ll ~/.eclipse/org.eclipse.platform_*_linux_gtk_x86_64/plugins/
> total 36K
> -rw-rw-r-- 1 nboldt nboldt 34K Nov 16 10:54 org.slf4j.api_1.7.2.v20121108-1250.jar
> {code}
> But this plugin is already installed here:
> {code}/opt/rh/rh-java-common/root/usr/share/java/slf4j/slf4j-api.jar
> /opt/rh/rh-eclipse46/root/usr/share/eclipse/droplets/egit-mylyn/eclipse/plugins/slf4j.api_1.7.4.jar{code}
> So even though the connector install doesn't install any new m2e-apt stuff (it's already installed too):
> {code}
> /opt/rh/rh-eclipse46/root/usr/share/eclipse/droplets/devstudio/eclipse/plugins/org.jboss.tools.maven.apt.ui_1.3.0.201610261805.jar
> /opt/rh/rh-eclipse46/root/usr/share/eclipse/droplets/devstudio/eclipse/plugins/org.jboss.tools.maven.apt.core_1.3.0.201610261805.jar
> /opt/rh/rh-eclipse46/root/usr/share/eclipse/droplets/devstudio/eclipse/features/org.jboss.tools.maven.apt.feature_1.3.0.201610261805
> {code}
> ... the result of this install is to cause use constrain violations and break the devstudio install.
> A bigger problem occurs in JBDS-4150 when installing Thym or Aerogear features, since a second version of org.apache.httpcomponents.httpclient_4.3.6.v201511171540.jar is installed even though there's already one in the /opt/rh/ install footprint.



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)



More information about the jbosstools-issues mailing list