Class JavaLaunchHelper is implemented in both ... libinstrument.dylib. One of the two will be used. Which one is undefined

ams*_*ams 271 java eclipse macos jvm jvm-hotspot

I upgraded to the latest Java 7 u40 on MacOS X and started getting the following message on the console when launching my application using Eclipse. The app works fine but I would like to find out the cause of the problem and hopefully a fix for it.

objc[10012]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/bin/java and /Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/jre/lib/libinstrument.dylib. One of the two will be used. Which one is undefined.
Run Code Online (Sandbox Code Playgroud)

Does anyone know why this message is printed and how to fix it?

rus*_*ust 171

⚠️ 对JetBrains IntelliJ IDEA:转到 Help -> Edit Custom Properties....如果要求您创建文件,请创建该文件.要禁用错误消息,请将以下内容粘贴到您创建的文件中:

idea_rt
idea.no.launcher=true
Run Code Online (Sandbox Code Playgroud)

这将在下次重启IntelliJ时生效.

  • 没有做任何其他事情,为我工作.这应该标记正确. (9认同)
  • 为IDEA 2017.1.3 OSX 10.12.5 JRE 1.8工作 (7认同)
  • 在Mac上的IDEA 2017.1.1中没有为我工作 (3认同)
  • OP使用的是Eclipse,而不是IntelliJ.所以你给他们提供了在错误的编辑器中修改设置的指令(因此它没有被标记为正确). (2认同)
  • 我同意@Allison - 如果这个答案包含一个Eclipse的手段,那将是非常好的.但回答错误的IDE? (2认同)

mut*_*nUp 116

截至2017年10月,此问题现已解决

  • 我刚刚安装了java版"1.8.0_144",我遇到了这个问题. (4认同)
  • @Reihan_amn你会,直到建立152 (2认同)

小智 20

  1. 从这里安装Java 7u21:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u21-oth-JPR

  2. 设置这些变量:

    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home
    export PATH=$JAVA_HOME/bin:$PATH
    
    Run Code Online (Sandbox Code Playgroud)
  3. 运行你的应用程序和乐趣:)

  • 适用于1.8.0_92:#in .zshrc或.bashrc导出JAVA_HOME =/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home export PATH = $ JAVA_HOME/bin:$ PATH (3认同)

Pri*_*ain 11

复制粘贴@ Lichtamberg对gotoalberto的回答的评论

适用于Java 1.8:

# in ~/.zshrc and ~/.bashrc

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home 
export PATH=$JAVA_HOME/bin:$PATH 
Run Code Online (Sandbox Code Playgroud)

这解决了我在java 8上的问题.

  • 编辑〜/ .zshrc和〜/ .bashrc后仍然在Android Studio(2.2p3)中遇到问题 (4认同)

par*_*ite 5

不确定这是否是问题的原因,但我在安装JVM Monitor后才遇到此问题.

卸载JVM Monitor为我解决了这个问题.


Mat*_*enz 4

正如其他答案所详细说明的那样,这是 JDK(最高可达 u45)中的一个错误,将在 JDK7u60 中修复 - 虽然尚未发布,但您可以从以下位置下载 b01:https: //jdk7.java.net/download。 html

它是测试版,但为我解决了这个问题。

  • 我安装了 u60 但仍然得到 Class JavaLaunchHelper is Implemented in both /Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home/bin/java 和 /Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/ Home/jre/lib/libinstrument.dylib。将使用两者之一。哪一个是未定义的。 (11认同)
  • 它实际上还没有修复。他们支持 u60 的修复 (3认同)
  • 有关于错误的参考吗?网址? (2认同)