Today I upgraded my Intellij Idea on macOS Sierra, and now, when I run apps in console I have this error:
objc[3648]: 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.
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 (it shouldn't), 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...
). The workaround will take effect on the next restart of the IDE.
I don't recommend disabling IntelliJ IDEA launcher agent, though. It's used for such features as graceful shutdown (Exit button), thread dumps, workarounds a problem with too long command line exceeding OS limits, etc. Losing these features just for the sake of hiding the harmless message is probably not worth it, but it's up to you.
Since “this message is harmless”(see the @CrazyCoder's answer), a simple and safe workaround is that you can fold this buzzing message in console by IntelliJ IDEA settings:
【Preferences】- 【Editor】-【General】-【Console】- 【Fold console lines that contain】 Of course, you can use 【Find Action...】(cmd+shift+A on mac) and type Fold console lines that contain so as to navigate more effectively. add Class JavaLaunchHelper is implemented in both
https://user-images.githubusercontent.com/1063891/30635988-b4003068-9e26-11e7-926f-aeca7fc09297.png
On my computer, It turns out: (LGTM :b )
https://user-images.githubusercontent.com/1063891/30636211-68da8a9c-9e27-11e7-9a7e-ae5c3b6af4c2.png
And you can unfold the message to check it again:
https://user-images.githubusercontent.com/1063891/30636264-84d9e74c-9e27-11e7-8a8e-9c2b78a996ed.png
PS:
As of October 2017, this issue is now resolved in jdk1.9/jdk1.8.152/jdk1.7.161 for more info, see the @muttonUp's answer)
I am using Intellij Idea 2017 and I got into the same problem. What solved the problem for me was to simply
close the project in intelliJ File -> New -> project from existing resources use Import from external model (if any) open the project again.
close then open
solution =))
.idea
folder before re-importing.
This happened to me when I installed Intellij IDEA 2017, go to menu Preferences -> Build, Execution, Deployment -> Debugger and disable the option: "Force Classic VM for JDK 1.3.x and earlier". This works to me.
I have found the other workaround: to exclude libinstrument.dylib
from project path. To do so, go to the Preferences -> Build, Execution and Deployment -> Compiler -> Excludes -> + and here add file by the path in error message.
Same error, I upgrade my Junit
and resolve it
org.junit.jupiter:junit-jupiter-api:5.0.0-M6
to
org.junit.jupiter:junit-jupiter-api:5.0.0
This was an issue for me years ago and I'd previously fixed it in Eclipse by excluding 1.7 from my projects, but it became an issue again for IntelliJ, which I recently installed. I fixed it by:
Uninstalling the JDK: cd /Library/Java/JavaVirtualMachines sudo rm -rf jdk1.8.0_45.jdk (I had jdk1.8.0_45.jdk installed; obviously you should uninstall whichever java version is listed in that folder. The offending files are located in that folder and should be deleted.) Downloading and installing JDK 9.
Note that the next time you create a new project, or open an existing project, you will need to set the project SDK to point to the new JDK install. You also may still see this bug or have it creep back if you have JDK 1.7 installed in your JavaVirtualMachines folder (which is what I believe happened to me).
Success story sharing