AEM 6.1降级Java版本和快速入门显示UnsupportedClassVersionError major.minor版本52.0

时间:2015-10-08 22:02:48

标签: cq5 aem

我们在使用Java 1.8的Windows机器上使用AEM 6.1快速入门。

为了与其他团队保持一致,在我们卸载Java 8并停用JAVA_HOME和PATH变量以反映新的(降级的)Java版本并使用“crx”运行AEM之后,我们不得不将Java版本降级到1.7.0_79。 -quickstart.jar“文件,AEM启动正常,但默认启动页面未加载并显示此异常:

java.lang.UnsupportedClassVersionError: org/apache/jsp/libs/granite/core/components/login/login_jsp : Unsupported major.minor version 52.0

RequestURI=/libs/granite/core/content/login.html

Servlet= /libs/granite/core/components/login/login.jsp
ApacheSling/2.4 (jetty/9.2.9.v20150224, Java HotSpot(TM) 64-Bit Server VM 1.7.0_79, Windows 7 6.1 amd64) 

对我们有用的解决方案之一是重命名或删除“crx-quickstart”文件夹..并启动AEM,因为AEM将使用正确版本的Java重新编译所有内容,并且一切都按预期工作。但还有其他方法..不重命名/删除crx-quickstart文件夹?

2 个答案:

答案 0 :(得分:3)

以下是解决方案的更详细说明:

症状:在您的计算机上升级或降级Java版本后,看到AEM上没有加载页面,甚至连主登录页面都没有。

导致此问题的原因: 当AEM启动时,它使用PC上安装的Java版本编译java / jsp文件。当Java版本发生变化时,新文件应该由已安装的版本编译,所有引用都必须更新,但AEM 6.1存在问题(这可能在Service Pack中修复)。

解决:

注意:请在执行此操作之前备份您的AEM实例

  • 转到localhost:4502 / system / console / configMgr
  • 如果页面打开,请以“admin”身份登录
    • 转到菜单> OSGI>捆绑[http://localhost:4502/system/console/bundles]
    • 找到这个“Apache Sling Commons FileSystem ClassLoader(org.apache.sling.commons.fsclassloader)”并注意BundleID(它 对我来说 218
    • 停止AEM
    • 在Windows资源管理器中,转到安装AEM的路径.. $ path \ aem-61-author \ crx-quickstart \ launchpad \ felix \ bundle218 \ data
    • 删除其下的文件夹。
    • 重新启动AEM ..这应解决问题。
  • 如果上面的页面没有打开,
    • (假设bundle-id为218)
    • 停止AEM
    • 在Windows资源管理器中,转到安装AEM的路径.. __ $路径\ AEM-61-笔者\ CRX-快速启动\启动板\菲利克斯\ bundle218 \数据 __
    • 删除其下的文件夹。
    • 重新启动AEM ..这应解决问题。

答案 1 :(得分:0)

为了避免降级您的java版本,解决方法是在首次安装 CQ6.1时应用Service Pack 2.

首先,从adobe包共享下载SP2或从其他计算机复​​制。然后解压缩你的cq jar文件并将你的SP2 zip文件复制到crx-quickstart / install文件夹然后安装。

详细步骤应如下所示

java -jar cq5-author-<port>.jar -unpack -v
cp SP2.zip crx-quickstart/install
java -jar cq5-author-<port>.jar

再次,首次安装时必须应用Service Pack 2.