Hi,
we are upgrading the system from cq 5.6.1 to Aem 6.2,
where we have a following setup.
1.module-1 (zaxcorp-direct) is having following dependency in its pom
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
2. module-2 (Zaxcorp-web) is having following dependency in its pom.
<dependency>
<groupId>com.zax</groupId>
<artifactId>zaxcorp-direct</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
3. when two bundles are installed into AEM only one among them is active and error is thrown as below.
Zaxcorp-web bundle is in Installed state.(Module-2)
Zaxcorp-direct bundles is in active state.(module-1)
error.log:
23.08.2017 09:27:48.602 *ERROR* [qtp817002287-3339] org.apache.felix.http.jetty %bundles.pluginTitle: Cannot start (org.osgi.framework.BundleException: Uses constraint violation. Unable to resolve resource com.lbi.zax.web [com.lbi.zax.web [918](R 918.0)] because it is exposed to package 'com.google.common.cache' from resources com.google.guava [com.google.guava [883](R 883.0)] and com.adobe.granite.osgi.wrapper.guava [com.adobe.granite.osgi.wrapper.guava [84](R 84.0)] via two dependency chains.
Does anybody know why it happened and how to fix it?
Note: Guava dependency is deleted from module-2 as part of investigation, built it and installed but still issue persists.