Environment
Issue/Symptoms
While upgrading Adobe Experience Manager (AEM) from version 6.4.2 (onwards) to 6.5 and this instance was previously upgraded from AEM 6.1 or AEM 6.2, the upgrade might fail with missing requirement error
04.12.2019 15:14:33.439 *ERROR* FelixStartLevel ERROR: Bundle ‘827’ Error starting/stopping bundle. (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.scripting.javascript 827(R 827.0): missing requirement org.apache.sling.scripting.javascript 827(R 827.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=2.0.0)) Unresolved requirements: org.apache.sling.scripting.javascript 827(R 827.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=2.0.0)))
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.scripting.javascript 827(R 827.0): missing requirement org.apache.sling.scripting.javascript 827(R 827.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=2.0.0)) Unresolved requirements: org.apache.sling.scripting.javascript 827(R 827.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=2.0.0))
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4368)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2281)
at org.apache.felix.framework.Felix.setBundleStartLevel(Felix.java:1727)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:338)
at java.lang.Thread.run(Unknown Source)
04.12.2019 15:14:33.440 *ERROR* FelixStartLevel ERROR: Bundle ‘828’ Error starting/stopping bundle. (org.osgi.framework.BundleException: Unable to resolve org.apache.sling.scripting.jst 828(R 828.0): missing requirement org.apache.sling.scripting.jst 828(R 828.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=1.0.0)(!(version=3.0.0))) Unresolved requirements: org.apache.sling.scripting.jst 828(R 828.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=1.0.0)(!(version=3.0.0))))
org.osgi.framework.BundleException: Unable to resolve org.apache.sling.scripting.jst 828(R 828.0): missing requirement org.apache.sling.scripting.jst 828(R 828.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=1.0.0)(!(version=3.0.0))) Unresolved requirements: org.apache.sling.scripting.jst 828(R 828.0) osgi.wiring.package; (&(osgi.wiring.package=javax.jcr)(version=1.0.0)(!(version=3.0.0)))
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4368)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2281)
at org.apache.felix.framework.Felix.setBundleStartLevel(Felix.java:1727)
at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:338)
at java.lang.Thread.run(Unknown Source)
Or this error:
11.12.2019 10:26:32.102 *ERROR* FelixDispatchQueue com.adobe.granite.crypto FrameworkEvent ERROR (org.osgi.framework.BundleException: Unable to resolve com.adobe.granite.crypto 158(R 158.3): missing requirement com.adobe.granite.crypto 158(R 158.3) osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version=2.0.1)(!(version=3.0.0))) Unresolved requirements: com.adobe.granite.crypto 158(R 158.3) osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version=2.0.1)(!(version=3.0.0))))
org.osgi.framework.BundleException: Unable to resolve com.adobe.granite.crypto 158(R 158.3): missing requirement com.adobe.granite.crypto 158(R 158.3) osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version=2.0.1)(!(version=3.0.0))) Unresolved requirements: com.adobe.granite.crypto 158(R 158.3) osgi.wiring.package; (&(osgi.wiring.package=org.apache.commons.io)(version=2.0.1)(!(version=3.0.0)))
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4368)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2281)
at org.apache.felix.framework.Felix$RefreshHelper.restart(Felix.java:5349)
at org.apache.felix.framework.Felix.refreshPackages(Felix.java:4516)
at org.apache.felix.framework.FrameworkWiringImpl.run(FrameworkWiringImpl.java:188)
at java.lang.Thread.run(Thread.java:748)
Please follow the below given steps to avoid error:
After upgrading to 6.5 (or before running the final upgrade command), please stop the instance
Download this commons-io jar to the server and place it under crx-quickstart/install
Restart the instance using the below command:
java -server -Xmx1024m -XX:MaxPermSize=256M -Djava.awt.headless=true -Dsling.run.modes=author,crx3,crx3tar -jar cq-quickstart-6.5.0.jar -p 4502 -Dsling.properties=conf/sling.properties -Dorg.apache.sling.launchpad.startupmode=UPDATE &
Check /system/console/bundles, once all bundles are in active state and the system is fully upgraded, then stop the instance again.
Restart the instance through the below command:
java -server -Xmx1024m -XX:MaxPermSize=256M -Djava.awt.headless=true -Dsling.run.modes=author,crx3,crx3tar -jar cq-quickstart-6.5.0.jar -p 4502 -Dsling.properties=conf/sling.properties &
The upgrade should complete successfully.
Additional information
This issue occurs when you are upgrading an AEM 6.4.2+ instance which was earlier upgraded from AEM 6.1 or AEM 6.2