今天我在macOS Sierra上升级了我的Intellij Idea,现在,当我在控制台运行应用程序时,我有这个错误:

objc[3648]:类JavaLaunchHelper在/Library/Java/JavaVirtualMachines/jdk1.8.0_121中实现。jdk/Contents/Home/bin/java (0x10d19c4c0)和/Library/ java /JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/lib/ libinstrucment .jdk/Contents/Home/jre/lib/ libinstrucment .jdk/Contents/Home/jre/lib/ libinstrucment .jdk (0x10d19c4c0)dylib (0 x10ea194e0)。两者中的一个将被使用。哪一个是没有定义的。


当前回答

你可以在这里找到所有的细节:

运行控制台中的“objc:类JavaLaunchHelper在两个…中都实现了”警告

这是Mac上的Java中的旧bug,由IDE在启动应用程序时使用的Java代理触发。此消息是无害的,可以安全地忽略。Oracle开发者评论:

这个信息是良性的,这个问题没有负面影响 由于该类的两个副本是相同的(从精确的 相同的源)。这纯粹是一个表面问题。

该问题在Java 9和Java 8更新152中得到修复。

如果它以任何方式打扰你或影响你的应用程序(它不应该),IntelliJ IDEA的解决方案是通过添加IDEA .no禁用idea_rt启动器代理。Launcher =true into idea。属性(帮助|编辑自定义属性…)该解决方案将在下次重新启动IDE时生效。

不过,我不建议禁用IntelliJ IDEA启动代理。它用于诸如优雅关机(退出按钮)、线程转储、解决命令行过长超出操作系统限制的问题等功能。仅仅为了隐藏无害的信息而失去这些功能可能是不值得的,但这取决于您。

其他回答

这发生在我安装Intellij IDEA 2017时,去菜单首选项->构建,执行,部署->调试器并禁用选项:“强制经典虚拟机用于JDK 1.3。X和更早”。这对我很管用。

你可以在这里找到所有的细节:

运行控制台中的“objc:类JavaLaunchHelper在两个…中都实现了”警告

这是Mac上的Java中的旧bug,由IDE在启动应用程序时使用的Java代理触发。此消息是无害的,可以安全地忽略。Oracle开发者评论:

这个信息是良性的,这个问题没有负面影响 由于该类的两个副本是相同的(从精确的 相同的源)。这纯粹是一个表面问题。

该问题在Java 9和Java 8更新152中得到修复。

如果它以任何方式打扰你或影响你的应用程序(它不应该),IntelliJ IDEA的解决方案是通过添加IDEA .no禁用idea_rt启动器代理。Launcher =true into idea。属性(帮助|编辑自定义属性…)该解决方案将在下次重新启动IDE时生效。

不过,我不建议禁用IntelliJ IDEA启动代理。它用于诸如优雅关机(退出按钮)、线程转储、解决命令行过长超出操作系统限制的问题等功能。仅仅为了隐藏无害的信息而失去这些功能可能是不值得的,但这取决于您。

我正在使用Intellij Idea 2017,我遇到了同样的问题。对我来说,解决问题的方法很简单

在intelliJ中关闭项目 File ->从现有资源中新建>项目 使用从外部模型导入(如果有的话) 再次打开项目。

同样的错误,我升级了我的Junit并解决了它

org.junit.jupiter:junit-jupiter-api:5.0.0-M6

to

org.junit.jupiter:junit-jupiter-api:5.0.0

我找到了另一种解决办法:排除性欲工具。项目路径中的Dylib。为此,进入首选项->构建,执行和部署->编译器->排除-> +,并在错误消息中通过路径添加文件。