类JavaLaunchHelper在两个地方实现
今天,我在macOS Sierra上升级了Intellij Idea,现在,当我在console中运行应用程序时,出现以下错误: objc[3648]:类JavaLaunchHelper在/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/Java(0x10d19c4)和/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/libinstrument.dylib(0x10ea194e0)中实现。将使用其中一个。哪一个是未定义的类JavaLaunchHelper在两个地方实现,java,macos,intellij-idea,Java,Macos,Intellij Idea,今天,我在macOS Sierra上升级了Intellij Idea,现在,当我在console中运行应用程序时,出现以下错误: objc[3648]:类JavaLaunchHelper在/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/bin/Java(0x10d19c4)和/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/li
您可以在此处找到所有详细信息:
- 运行控制台中的“objc:Class JavaLaunchHelper在两个…”中都实现”警告
IDEA.no.launcher=true
添加到IDEA.properties
(Help
编辑自定义属性…
)来禁用launcher代理。此解决方案将在下次重新启动IDE时生效
不过,我不建议禁用IntelliJ IDEA启动器代理。它用于正常关机(退出按钮)、线程转储、解决命令行过长超过操作系统限制的问题等功能。仅仅为了隐藏无害消息而丢失这些功能可能不值得,但这取决于您。我在安装Intellij IDEA 2017时就遇到了这种情况,转到菜单首选项->构建、执行、部署->调试器并禁用选项:“Force Classic VM for JDK 1.3.x及更早版本”。这对我有用 我正在使用Intellij Idea 2017,我也遇到了同样的问题。对我来说,解决问题的办法是
关闭intelliJ中的项目
文件->新建->现有资源中的项目
使用从外部模型导入(如果有)
再次打开项目李>
同样的错误,我升级了我的Junit并解决了它
org.junit.jupiter:junit-jupiter-api:5.0.0-M6
到
由于“此消息无害”(请参阅),简单和安全的解决方法是,您可以通过IntelliJ IDEA设置在控制台中折叠此嗡嗡声消息:
【首选项】-【编辑器】-【常规】-【控制台】-【折叠包含的控制台行】
当然,您可以使用【查找操作…】(cmd+shift+A
在mac上)并键入包含
的折叠控制台行,以便更有效地导航
add类JavaLaunchHelper在两个
在我的电脑上,结果是:(LGTM:b)
您可以展开邮件以再次检查:
PS:
截至2017年10月,该问题现已在jdk1.9/jdk1.8.152/jdk1.7.161中得到解决
有关更多信息,请参阅)
我找到了另一种解决方法:从项目路径中排除libinstrument.dylib
。为此,请转到首选项->编译、执行和部署->编译器->排除->+并在错误消息中按路径添加文件。这是我多年前遇到的问题,我以前在Eclipse中通过从项目中排除1.7解决了这个问题,但这再次成为IntelliJ的一个问题,我最近安装了IntelliJ。我通过以下方式修复了它:
卸载JDK:
cd /Library/Java/JavaVirtualMachines
sudo rm -rf jdk1.8.0_45.jdk
(我安装了jdk1.8.0_45.jdk
;显然,您应该卸载该文件夹中列出的任何java版本。有问题的文件位于该文件夹中,应该删除。)
李>
请注意,下次创建新项目或打开现有项目时,需要将项目SDK设置为指向新的JDK安装。如果您在JavaVirtualMachines文件夹中安装了JDK1.7(我相信这就是我遇到的情况),您可能仍然会看到这个bug,或者让它重新出现。您可能还需要禁用CrazyCoder提到的idea\u rt launcher agent。将idea.no.launcher=true添加到idea.properties中(帮助|编辑自定义属性…)。请确保在此之后重新启动IDE。是的,自定义属性变通方法有效,您的建议对我的系统无效。您是否尝试过您的答案,即切换设置-我不认为JDK1.3.x之前的选项会有任何效果?我使用的是Java8。对我来说,一开始我尝试了自定义属性,但它对我不起作用。然后我找到了这个禁用JDK1.3.x的解决方案。重新启动IDE后,一切正常。@DannyGuo由于该问题是由任何Java代理引起的,并且在调试模式下Java代理始终用于现代JVM,因此仅在调试模式下为您修复了该问题,但在启动代理启用后,在运行模式下会出现该问题。idea\u rt会做什么?有没有理由不禁用它?它提供了优雅的退出、线程转储、处理可能超过操作系统限制的长类路径等。我不会禁用它,特别是因为隐藏了一条无害的消息。我安装了Java 8 update 152,它解决了问题,如答案所示。谢谢。什么时候152将通过oracle java se?安装IntelliJ 2018.2,运行java 8 update 191:消息仍然存在。经典的关闭然后打开解决方案=))我尝试了这里提供的每个解决方案作为答案,但只有这个解决方案对我有效。我建议在重新导入之前删除.idea
文件夹。这在运行Java 8 update 151的macOS Sierra上的idea 2017.3.1中对我不起作用。然而,升级到152修复了在重新启动IDEA并将我的项目设置为使用update 152之后的问题。
cd /Library/Java/JavaVirtualMachines
sudo rm -rf jdk1.8.0_45.jdk