Mac 上 Class JavaLaunchHelper is implemented in both 报错

Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/java (0x10d19c4c0) and /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/lib/libinstrument.dylib (0x10ea194e0). One of the two will be used. Which one is undefined.

昨晚在Mac上装了Intellij Idea,随手用IJ带的Java工程模板创建了一个测试工程,控制台报了这样一个Error。

意思是这个JavaLaunchHelper类被实现了两次。无奈之下搜索了万能的Stack Overflow,找到了解决方案。

http://stackoverflow.com/questions/43003012/objc3648-class-javalaunchhelper-is-implemented-in-both

引用高票回答如下

You can find all the details here:

  • IDEA-170117 “objc: Class JavaLaunchHelper is implemented in both …” warning in Run consoles

It’s the old bug in Java on Mac that got triggered by the Java Agent being used by the IDE when starting the app. This message is harmless and is safe to ignore. Oracle developer’s comment:

The message is benign, there is no negative impact from this problem since both copies of that class are identical (compiled from the exact same source). It is purely a cosmetic issue.

The problem is fixed in Java 9 and in Java 8 update 152.

If it annoys you or affects your apps in any way, the workaround for IntelliJ IDEA is to disable idea_rt launcher agent by adding idea.no.launcher=true into idea.properties (Help | Edit Custom Properties...).

这位外国码友清楚地解释了这个Error的原因,大概意思是说这是Mac上面Java的一个老Bug了,会在那些使用了Java Agent的IDE上运行应用时触发,但这个Error对程序是无影响的,可以无视。在Java 9和Java 1.8.152版本里已经修复了。

解决方案:

点击IJ最上面菜单的Help-Edit Custom Properties,没有这个properties文件的话,IJ会提示创建,然后在里面加上

idea.no.launcher=true
©️2020 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值