AEM 6.1 Java版本降级和quickstart显示不受支持的ClassVersionError major.minor版本52.0

AEM 6.1 Java版本降级和quickstart显示不受支持的ClassVersionError major.minor版本52.0,aem,Aem,我们在带有Java1.8的Windows机器上使用AEM6.1QuickStart 为了与其他团队保持一致,我们必须将Java版本降级到1.7.0_79,在我们卸载Java 8并将Java_HOME和PATH变量剩余以反映新(降级)版本的Java并使用“crx quickstart.jar”文件运行AEM后,AEM正确启动,但默认启动页面未加载,并显示此异常: java.lang.UnsupportedClassVersionError: org/apache/jsp/libs/granite/

我们在带有Java1.8的Windows机器上使用AEM6.1QuickStart

为了与其他团队保持一致,我们必须将Java版本降级到1.7.0_79,在我们卸载Java 8并将Java_HOME和PATH变量剩余以反映新(降级)版本的Java并使用“crx quickstart.jar”文件运行AEM后,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文件夹?

为避免降级java版本,一种解决方法是在首次安装时应用Service Pack 2

首先,从adobe package share下载您的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
java-jar cq5 author-.jar-unpack-v
cp SP2.zip crx快速启动/安装
java-jar cq5 author-.jar

同样,Service Pack 2必须在第一次安装时应用。以下是解决方案的更详细说明:

症状:在您的机器上升级或降级Java版本后,发现页面没有加载到AEM上,甚至没有加载到主登录页面

原因是什么: 当AEM启动时,它使用pc上安装的java版本编译java/jsp文件。当java版本发生变化时,新文件应按安装的版本编译,并且必须更新所有引用,但AEM 6.1上存在一个问题(这可能在Service Pack中修复)

分辨率:

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

  • 转到localhost:4502/system/console/configMgr
  • 如果页面打开,以“管理员”身份登录
    • 进入“功能表>OSGI>捆绑包”[
    • 找到这个“ApacheSlingCommons文件系统类加载器(org.Apache.Sling.Commons.fsclassloader)”,并注意BundleID(它是 是218(对我来说是
    • 停止AEM
    • 在Windows资源管理器上,转到安装AEM的路径。$path\AEM-61-author\crx quickstart\launchpad\felix\bundle218\data
    • 删除其下的文件夹
    • 重新启动AEM..这将解决问题
  • 如果上面的页面没有打开,
    • (假设捆绑id为218)
    • 停止AEM
    • 在Windows资源管理器上,转到安装AEM的路径__ $path\aem-61-author\crx quickstart\launchpad\felix\bundle218\data __
    • 删除其下的文件夹
    • 重新启动AEM..这将解决问题

谢谢你的建议。我可以试试。但为了澄清,使用AEM 6.1-ServicePack 2不会给出错误(主要-次要版本)即使我们做了java降级?这可能已经奏效,但在无法访问..console/configMgr页面的情况下,我无法找到给定服务的bundleID。因此,我无法使用选项#2。谢谢,奏效:)如果我双击jar文件,它就奏效了,但没有使用bin文件夹下的start.bat文件。您找到解决方案了吗解决方法?如另一个答案中所述,这可能已在服务包中得到解决。两个服务包在6.1版本中发布。我们在6.1初始版本中遇到了问题。在初始版本中,我没有再次访问此问题。