首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在macbook m1上安装eclipse 2020-03、jdk 1.8、m1

在macbook m1上安装eclipse 2020-03、jdk 1.8、m1
EN

Stack Overflow用户
提问于 2022-04-18 01:36:04
回答 2查看 2.3K关注 0票数 0

我对mac os、java、eclipse、简单的所有东西,以及所有由于苹果硅的革命而做出的改变都很陌生,这让我抓狂。

我和我的同事正在开发一个基于Eclipse2020-03、jdk 1.8、spring 3的java项目,而且我在我的Macbook M1上安装环境时遇到了困难。

首先,我尝试安装打开的jdk1.8 1.8,并设法在.zshrc中设置路径,然后我安装了Eclipse2020-03,并在它立即崩溃时使用rosetta打开了它。它甚至不会问要打开哪个工作区。

因此,我尝试安装新的Eclipse2022-06 (arm),并将jdk设置为1.8。Eclipse工作得很好,直到我尝试制作一个新的Spring项目时,它给了我java.lang.exceptionininitializererror。我搜索了这个错误的解决方案,只找到了“升级jdk”的建议。

我决定将Eclipse降低到2021-12 ( arm,因为它支持第一个arm),并在jdk11 + set Path中安装.zshrc (注释掉了jdk1.8路径)。当我尝试创建新的spring遗留项目时,我仍然会得到java.lang.exceptionininitializererror

试过:

  • 选项1. Eclipse 2020-03 (macOS x86_64) + jdk1.8 1.8 -> eclipse不会打开
  • 选项2.创建spring项目时,Eclipse2022-06 (AArch64) + jdk1.8 -> java.lang.exceptionininitializererror
  • 选项3.创建spring项目时,Eclipse 2021-12 (AArch64) + jdk11 -> java.lang.exceptionininitializererror

有了上面的选项3,我可以在不同的PC上打开spring项目,并且工作得很好。但我还是想解决我的问题。

我想过了,想出了三种方法来解决这些问题:

  1. 与我的同事拥有完全相同的Eclipse、jdk、spring版本(选项1),尝试修复开始eclipse问题。自从我使用罗塞塔以来,->很慢,但是我和我的同事不会有兼容性问题。
  2. 使用最近的Eclipse、jdk、spring3 ->,并且问题较少,但我想我会遇到大量的兼容性问题
  3. 使用相对较旧但支持苹果硅的Eclipse(选项3),jdk 11 ->快速,有一些兼容性问题(如果我解决'java.lang.exceptionininitializererror‘问题)。

我的问题是:

  1. 在上面列出的三种方法中,你建议我尝试哪一种?
  2. 我如何解决我所面临的问题,当我尝试的时候,特殊的方式?

加法:我在终端上找不到任何相关的错误,但是我在我的错误日志上找到了这个。

Additions2:我决定使用jdk11安装相对较新的Eclipse(2022-03)。到目前为止,它运行良好,没有任何兼容性问题。

EN

回答 2

Stack Overflow用户

发布于 2022-09-14 09:36:46

不幸的是,rzwitserloot的回答所指的Eclipse / Temurin可能从未为MacOS aarch64提供过JDK8,或者已经删除了它。他们的JDK11和更高,但这不是这个问题。

最后,我发现Azul提供了为MacOS ARM64 (苹果硅)编译的一个版本的MacOS 8:

https://www.azul.com/downloads/?version=java-8-lts&os=macos&architecture=arm-64-bit&package=jdk

我已经安装好了,它似乎运转良好。

代码语言:javascript
复制
java -version
openjdk version "1.8.0_345"
OpenJDK Runtime Environment (Zulu 8.64.0.19-CA-macos-aarch64) (build 1.8.0_345-b01)
OpenJDK 64-Bit Server VM (Zulu 8.64.0.19-CA-macos-aarch64) (build 25.345-b01, mixed mode)
票数 1
EN

Stack Overflow用户

发布于 2022-04-18 01:57:41

您可以从JDK8获得包括阿托品在内的所有JDK8的ARM mac版本。

Eclipse是高度向后兼容的。除了最新的稳定版本之外,没有任何合理的理由使用任何东西。

Eclipse本身运行在JVM上。这个JVM不需要成为项目的标准,因为eclipse中的任何项目都可以配置为在任何JVM上运行。因此,如果您需要一个较新的JVM版本来运行eclipse,只需这样做即可。如果你的项目不运行,这并不重要。

更普遍地说,获得一个ExceptionInInitializerError是一个包装器异常。真正的原因就在里面。更严格地检查跟踪;从命令行开始eclipse (打开一个终端,然后运行/path/to/Eclipse.app/Contents/MacOS/eclipse --现在您可以看到终端输出,这可能会有所帮助。"ExceptionInInitializerError“几乎什么也没有说,而且有十亿的原因。如果你想要导致这种情况的异常,那就更具体了。它不太可能与在M1上运行有关;java生态系统中很少有东西关心运行它的芯片。

更普遍地说,如果罗塞塔参与其中,你做错了,没有必要这样做。所有相关的东西(实际上就是JVM,其他的都运行在上面)都是本机可用的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71906787

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档