今天我在 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/ 中实现内容/Home/jre/lib/libinstrument.dylib (0x10ea194e0)。将使用两者之一。哪一个是未定义的。
您可以在此处找到所有详细信息:
IDEA-170117 “objc: Class JavaLaunchHelper is implemented in both ...” 运行控制台中的警告
IDE 在启动应用程序时使用的是 Mac 上的 old bug in Java。此消息是无害的,可以安全地忽略。 Oracle 开发者评论:
该消息是良性的,这个问题没有负面影响,因为该类的两个副本是相同的(从完全相同的源编译)。这纯粹是一个外观问题。
Java 9 和 Java 8 update 152 中的 problem is fixed。
如果它以任何方式惹恼您或影响您的应用程序(不应该),IntelliJ IDEA 的解决方法是通过将 idea.no.launcher=true
添加到 idea.properties
(Help
| Edit Custom Properties...
) 来禁用 idea_rt
启动器代理。解决方法将在下次重新启动 IDE 时生效。
不过,我不建议禁用 IntelliJ IDEA 启动器代理。它用于诸如正常关闭(退出按钮)、线程转储、解决命令行太长超出操作系统限制等问题的功能。仅仅为了隐藏无害的消息而失去这些功能可能不值得,但它是由你决定。
由于“此消息是无害的”(参见 the @CrazyCoder's answer),一个简单且安全的解决方法是您可以通过 IntelliJ IDEA 设置在控制台中折叠此蜂鸣消息:
【偏好设置】-【编辑器】-【通用】-【控制台】-【折叠控制台行包含】当然可以使用【查找动作...】(mac上cmd+shift+A),输入折叠控制台行包含以便更有效地导航。添加类 JavaLaunchHelper 在两者中都实现
https://user-images.githubusercontent.com/1063891/30635988-b4003068-9e26-11e7-926f-aeca7fc09297.png
在我的电脑上,结果是:(LGTM:b)
https://user-images.githubusercontent.com/1063891/30636211-68da8a9c-9e27-11e7-9a7e-ae5c3b6af4c2.png
您可以展开消息再次查看:
https://user-images.githubusercontent.com/1063891/30636264-84d9e74c-9e27-11e7-8a8e-9c2b78a996ed.png
PS:
截至 2017 年 10 月,此问题现已在 jdk1.9/jdk1.8.152/jdk1.7.161 中得到解决,有关更多信息,请参阅@muttonUp 的回答)
我正在使用 Intellij Idea 2017 并且遇到了同样的问题。对我来说解决问题的是简单地
在 intelliJ File -> New -> project from existing resources 中关闭项目使用 Import from external model(如果有)再次打开项目。
close then open
解决方案 =))
.idea
文件夹。
这发生在我安装 Intellij IDEA 2017 时,转到菜单首选项 -> 构建、执行、部署 -> 调试器并禁用选项:“强制适用于 JDK 1.3.x 及更早版本的经典 VM”。这对我有用。
我找到了另一种解决方法:从项目路径中排除 libinstrument.dylib
。为此,请转到 首选项 -> 构建、执行和部署 -> 编译器 -> 排除 -> + 并在此处按错误消息中的路径添加文件。
同样的错误,我升级我的 Junit
并解决它
org.junit.jupiter:junit-jupiter-api:5.0.0-M6
至
org.junit.jupiter:junit-jupiter-api:5.0.0
几年前这对我来说是个问题,我之前在 Eclipse 中通过从我的项目中排除 1.7 来修复它,但它再次成为我最近安装的 IntelliJ 的问题。我通过以下方式修复了它:
卸载 JDK: cd /Library/Java/JavaVirtualMachines sudo rm -rf jdk1.8.0_45.jdk (我安装了 jdk1.8.0_45.jdk;显然你应该卸载该文件夹中列出的任何 java 版本。有问题的文件位于在该文件夹中,应将其删除。)下载并安装 JDK 9。
请注意,下次创建新项目或打开现有项目时,您需要将项目 SDK 设置为指向新的 JDK 安装。如果您在 JavaVirtualMachines 文件夹中安装了 JDK 1.7(我相信这就是发生在我身上的事情),您也可能仍然会看到这个错误或让它重新出现。
不定期副业成功案例分享