【问题标题】:Getting error "Unsupported class file major version 61" trying to start Mule 4.4 in Windows尝试在 Windows 中启动 Mule 4.4 时出现错误 \"Unsupported class file major version 61\"
【发布时间】:2023-01-17 22:09:13
【问题描述】:

双击 mule.bat 时出现以下错误消息。

错误信息:

Caught: BUG! exception in phase 'semantic analysis' in source unit 'C:\NihaMule\mule-ee-distribution-standalone-4.4.0\mule-enterprise-standalone-4.4.0\bin\additional.groovy' Unsupported class file major version 61

【问题讨论】:

    标签: java mule4


    【解决方案1】:

    类文件 Major version - 61 ,这意味着你的系统有 JDK 17(最新的 Java 版本)。

    1. 请安装 JDK 11 以与 Mule 兼容

    2. 更新 JAVA_HOME windows 环境变量

    3. 更新 PATH windows 环境变量。

      运行 mule.bat

    【讨论】:

    • 我看过 Mule 论坛,但你指出了正确的方向。我经常根据我的工作在 IDE 之间切换,天哪,天哪,Anystudio 会让你经历困难……我在这里和论坛上提交了我的答案。
    【解决方案2】:

    您似乎在使用不兼容的 Java 版本来启动 Mule。使用兼容的 Java 版本并首先在 Windows PATH 环境变量中设置它,或者配置 Java executable in the configuration file wrapper.conf 的完整路径(示例:wrapper.java.command=<Java Home>/bin/java)。

    请注意,compatible Java versions for Mule 4.4 仅适用于 JDK 8 或 JDK 11。不支持任何其他 Java/OpenJDK 版本。

    【讨论】:

      【解决方案3】:

      c:program filesjava(对于 Windows)中删除其他 java 安装,为我解决了。

      我没有任何指向任何特定 Java 安装的环境变量,这让 AnyPoint studio 使用这些安装变得奇怪。

      我在 Windows 11 工作站上运行。

      注意:一些帖子建议将 mule 运行时版本更改为 4.2.x,但这会破坏某些功能,例如数据库连接器。在我的例子中,当一些像这样的功能被添加到项目中时,骡子服务变得非常不稳定。

      【讨论】:

        【解决方案4】:

        作为需要多个 Java jdk(或至少是最新的 LTS)的开发人员,我需要一种不同的方法。首先,你需要知道Anystudio 仅适用于 jdk8(预安装)或 jdk11(可配置).你可以忘记其余的。其次,作为 Eclipse 的衍生产品,您的JAVA_HOME 需要指向正确的 jdk否则您将收到上述错误,其中 61 表示用户已配置 jdk 17。

        配置 JDK 11 的步骤(适用于 Anypoint v7.14.0)

        • 右键单击您的项目
        • 转到“运行方式”并选择“Mule 应用程序(配置)”。将打开一个新窗口。
        • 在该窗口中,您会看到多个选项卡。选择“JRE”
        • 选择“备用 JRE”并单击“已安装的 JRE”按钮。一个新窗口打开
        • 在该窗口中,您会看到一个“添加...”按钮。选择“标准VM”,点击“下一步>”
        • 选择您的 jdk 目录。单击“完成”并从下拉列表中选择您的 jdk。

        或者:

        • 找到您的 AnypointStudio.ini 文件并配置您的 -vm 选项,如 here 所述,或在代码中:
        -vm
        C:Program FilesJavajdk-11.0.4injavaw.exe
        

        配置 Anystudio.ini 文件时有一些替代方案,所以如果上面的更改不起作用,请在 Mule 论坛上搜索最新信息配置studio使用自己的jdk.

        • 转到您的配置并选择“执行环境”而不是备用 JRE。尽管确保它指向 CDC-1.0/Foundation-1.0 (your_jdk_version)

        这应该在您的 JAVA_HOME 指向正确的 jdk 时起作用。如果像我一样需要切换到其他版本,不断手动更改它可能会很麻烦。为此,我创建了我在启动 Anystudio 之前执行的 .bat 文件。确保您的计算机路径引用 JAVA_HOME 而不是硬编码路径。否则下面的步骤是不够的。

        创建 .BAT 文件以编程方式更改您的 JAVA_HOME(适用于 Windows 11)

        • 打开记事本
        • 键入以下内容,记住将 jdk 更改为您的个人路径/版本:
        setx /M JAVA_HOME "C:Program FilesJavajdk-11.0.4"
        
        • 将带有 your_file_name.bat 的文件保存为“所有文件”
        • 从您的 bat 文件创建快捷方式
        • 用鼠标右键单击快捷方式并转到“属性”。一个新窗口打开
        • 在打开的窗口中,转到“高级”
        • 选择“以管理员身份运行”,点击“确定”,点击“应用”

        请记住,您将需要其中的 2 个 .bat 文件。一个用于降级 JAVA_HOME(在打开 Anystudio 之前执行),一个用于恢复它(在您完成 Anystudio 中的工作后执行)。系统设置和命令行都不会直接显示更改后的 JAVA_HOME 路径。关闭/重新打开它们以查看更改是否已应用。

        【讨论】:

          猜你喜欢
          • 2023-01-27
          • 2019-10-20
          • 1970-01-01
          • 2015-09-18
          • 1970-01-01
          • 1970-01-01
          • 2021-02-24
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多