繁体   English   中英

与 Apple Silicon M1 ARM 相关的 Pentaho 9.3 Spoon 错误是否有解决方案?

[英]Is there a solution around Pentaho 9.3 Spoon errors related to Apple Silicon M1 ARM?

在 MacBook Pro M1(Apple Silicon)上的 Mac OS Monterey 上安装 Pentaho Data Integration 9.3。

我正在运行 OpenJDK 11:

openjdk版本“11.0.15” 2022-04-19

OpenJDK 运行时环境 (build 11.0.15+10)

OpenJDK 64-Bit Server VM(build 11.0.15+10,混合模式)

install.sh 进程运行没有错误。 但是,安装后,尝试执行spoon.sh进程,出现如下错误...

WARNING: Using java from path
DEBUG: _PENTAHO_JAVA_HOME=
DEBUG: _PENTAHO_JAVA=java
DEBUG: PENTAHO_INSTALLED_LICENSE_PATH=
java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
    no swt-cocoa-3738 in java.library.path: [./../libswt/osx64/]
    no swt-cocoa in java.library.path: [./../libswt/osx64/]
    Can't load library: /Users/jgregory/.swt/lib/macosx/aarch64/libswt-cocoa-3738.jnilib
    Can't load library: /Users/jgregory/.swt/lib/macosx/aarch64/libswt-cocoa.jnilib
    Can't load library: /Users/jgregory/.swt/lib/macosx/aarch64/libswt-cocoa-3738.jnilib

    at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
    at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
    at org.eclipse.swt.internal.C.<clinit>(Unknown Source)
    at org.eclipse.swt.widgets.Display.<clinit>(Unknown Source)
    at org.pentaho.di.ui.core.widget.OsHelper.setAppName(OsHelper.java:106)
    at org.pentaho.di.ui.spoon.Spoon.main(Spoon.java:652)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.pentaho.commons.launcher.Launcher.main(Launcher.java:92)

有没有人遇到过这个问题,是否有任何已知的解决方法?

从这里下载最新的 swt 以获得 arm64 支持

https://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops4/S-4.25M1-202207061800/swt-4.25M1-cocoa-macosx-aarch64.zip&mirror_id=518

解压缩,获取 swt.jar 并将其放在 /path_to_your_data-integration/libswt/osx64/ 下,然后删除那里的那个。

与使用 rosseta shell 相比,如何设置 rosseta 的指南可以在这里找到: https ://stackoverflow.com/a/68571463/19586128

使用所需的配置启动spoon.sh

如果您使用 java 8 它首先会抱怨:线程“main”中的异常 java.lang.UnsupportedClassVersionError: org/eclipse/swt/widgets/Control 已由 Java 运行时的更新版本(类文件版本 55.0)编译,此版本的 Java 运行时仅识别最高 52.0 的类文件版本

我将我的 JAVA_HOME 更新为 18(也有 17 个作品)并且它有效

这对我有用,但请随时询问它是否不起作用,我可以提供更多帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM