web-dev-qa-db-ja.com

クラスJavaLaunchHelperは両方に実装されています。 2つのうちの1つが使用されます。未定義のもの

Javaバージョン「1.7.0_45」を搭載したMac OS X上のEclipse Keplerで簡単なGoogle App Engine Webアプリケーションプロジェクトを作成します。

以下に実行する:

objc[5398]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/bin/Java and /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/jre/lib/libinstrument.dylib. One of the two will be used. Which one is undefined.

localhostでWebアプリケーションとして実行しようとすると

おそらく次の問題に関連しています:

https://code.google.com/p/googleappengine/issues/detail?id=10046

どんな助けも役に立ちます。

119
Arunabh Das

オンラインで見つけたものから、これはJDK 1.7.0_45で導入されたバグです。 JDK 1.7.0_60にも存在するようです。 OracleのWebサイトの バグレポート には、修正があったものの、JDKがリリースされる前に削除されたことが記載されています。なぜ修正が削除されたのかはわかりませんが、すでに疑われていることは確認できます-JDKはまだ壊れています。

バグレポートでは、エラーは良性であり、実行時の問題を引き起こすべきではないと主張していますが、コメントの1つはそれに同意しません。私の経験では、メッセージを見てもJDK 1.7.0_60を使用して問題なく作業できました。

この問題が深刻な問題を引き起こしている場合、私が提案するいくつかのことがあります。

  • JDKに修正が追加されるまで、 JDK 1.7.0_25 に戻します。

  • バグレポート に注目して、この問題に関して行われている作業を把握してください。 Oracleが問題の重大度を認識するように、独自のコメントを追加することもできます。

  • JDK早期リリース を試してみてください。それらの1つで問題が解決する場合があります。

Mac OS XにJDKをインストールする手順は、 Mac OS XのJDK 7インストール で入手できます。 JDKを削除する手順も含まれています。

51
Michael Venable
  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
    
  3. アプリを実行して楽しもう:)

(マイナーアップデート:変数値を引用符で囲む)

7
gotoalberto