112

JAVA_HOMEを次のように設定しています。

C:\Program Files (x86)\Java\jdk1.6.0_18

実行した後、 Eclipsemaven installから次のメッセージが表示されます。

理由:

Unable to locate the Javac Compiler in:
  C:\Program Files (x86)\Java\jre6\..\lib\tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.

これは難しい部分だと確信しています

JREではなくJDK1.4以降を使用していることを確認してください

構成を実行すると、JRE6に設定されます。すでにインストールしているJDK1.6に変更するにはどうすればよいですか?

私もプラグインを変更しようとしました:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.0.2</version>
    <configuration>
        <source>1.6</source>
        <target>1.6</target>
        <executable>C:\Program Files (x86)\Java\jdk1.6.0_18\bin</executable>
    </configuration>
</plugin>

それでも同じエラーが発生します。

EclipseMavenプラグインを使用しています。EclipseでJREからJDKに変更するにはどうすればよいですか?

4

32 に答える 32

143

次のように、Eclipse が使用している JDK を更新してみてください。

メニューWindowPreferences...JavaInstalled JREsで JRE を追加して設定します。

JRE type: Standard VM JRE
Name: jdk1.6.0_18
JRE home directory: C:\Program Files (x86)\Java\jdk1.6.0_18

そうでない場合は、JAVA_HOME パスの括弧とスペースが問題を引き起こしている可能性があります。JDK を別の場所にコピーして、JAVA_HOME を更新してみてください。

于 2010-02-08T15:51:49.970 に答える
20

ファイルeclipse.inivmには、 JDK の場所を指す引数が必要です。

eclipse.ini次のように、JDK ホームを指すようにファイルを編集します。

-vm
C:\Program Files\Java\jdk1.6.0_06

これにより、マシン上のデフォルトの JRE ではなく、JDK から Eclipse が実行されることが保証されます。

于 2011-03-04T15:33:23.470 に答える
13

試してみて:

に移動しPreferences/Java/Installed JREsて、場所などに追加"C:\Program Files\Java\jdk1.6.0_27\jreします。

用のものを取り外します。C:\Program Files\Java\jre6

ご覧のとおり、パスC:\Program Files\Java\jre6\..\lib\tools.jarは最初の部分 (/.. まで) が に置き換えられた場合にのみ意味がありますC:\Program Files\Java\jdk1.6.0_27\jre

于 2012-10-01T09:25:33.587 に答える
10

フォークをtrueに設定すると、問題が解決しました。

<configuration>
    <fork>true</fork>
    <source>1.6</source>
    <target>1.6</target>
</configuration>
于 2011-10-24T17:44:26.787 に答える
9

私はまったく同じ問題を抱えていました!ショートカットの引数として「-vm c:\program files\java\jdkxxxxx\bin を ini ar に入れる」というすべてのせせらぎがまったく役に立たなかったので、私は何日も検索して検索していまし

(私はイライラしているように聞こえますか?信じてください。それは控えめな表現です! Maven を信頼できるものにするために 1 週​​間を失ったので、私はただ激怒しています!)

私は非常に予測不可能な行動をとっていました。コンパイルできる場合とできない場合があります。を実行するとmaven clean、コンパイラが見つからず、失敗しました。その後、ビルドパスで何かを変更すると、突然再び機能しました!!

メニューに行くまでWindowPreferencesJavaInstalled JRE's . JDK の場所を使用して新しい JRE を追加し、JRE を削除しました。突然 Maven が安定して動作しました!

たぶん、これは Apache のマニュアルに font-size 30 程度の文字を入れる価値があるでしょうか?

失礼ながら、これは Java コミュニティにとってまったくとんでもないことです。この種の問題を解決しようとして、これらすべての人々によって何日が失われたか想像できません。これが最終版としてリリースされるとは到底思えません。個人的には、ベータ版ソフトウェアという名前でそのようなものをリリースすることさえ敢えてしません...

いずれにせよよろしく.... 1週間の改ざんの後、ようやく開発を開始できます。上司がこのことを知らないことを願っています。.NET に行かないように彼を説得するのにかなりの労力を要しましたが、すでに残念に思っています。

于 2010-05-11T12:27:57.107 に答える
3

Eclipseで[実行]->[Mavenインストール]を使用しても同じ問題が発生しました。JAVA_HOMEとeclipse.iniは問題なく、最新のJDKを指しています。しかし、m2clipseはJREを使用しました。Eclipseの外部でmvninstallを使用すると、正常に機能しました。

私の場合、次のように問題を解決しました。

  1. Eclipseでナビゲートします。メニューウィンドウ設定JavaインストールされたJRE
  2. JREとJDKには2つの非アクティブなエントリがありました。アクティブなものは、最後にインストールされたJDKでした。Mavenが使用する必要がある1つを除くすべてのエントリを削除します。

Mavenはどちらがアクティブであるかを考慮していないと思います...

于 2010-05-10T20:36:05.723 に答える
3

Compiling Sources Using A Different JDKに基づいて、 pom.xmlファイルで fork を true に設定する必要があります。

于 2010-11-05T02:39:39.250 に答える
3

Maven 3.0.4、 set をインストールしM2_HOMEM2ところJAVA_HOMEです。次に、次のコマンドを実行しました。

mvn archetype:generate....

mvn compile

次のような失敗メッセージが表示されましmaven unable to locate javac compilerた。

私のコンピューターでは、デフォルトで JRE がC:\program files\java\jre.1.6にインストールされています。そして、他のC:\java\jdk1.6があり、このC:\java\ jdk1.6にJAVA_HOME設定されています。

設定に問題はありませんでした。mvn.batすべてのステップをエコーし​​、正しく%JAVA_HOME%表示されましC:\java\jdk1.6たが、コマンドを実行すると、mvn --versionJava home: C:\program files\java\jre1.1.6が表示されました。

-Djava.home=c:\java\jdk1.6最後に、以下のコマンドのように設定するだけでよいことがわかり、現在は正常に動作しています。

%MAVEN_JAVA_EXE% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Djava.home=%JAVA_HOME%" "-Dmaven.home=%M2_HOME%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%

注: これはmvnコマンド ライン用であり、Eclipse 用ではありません。

于 2012-05-06T04:07:55.883 に答える
2

Eclipse セットアップのみ

次の手順を実行します。

  1. Eclipse プロジェクトのプロパティを右クリックします。

  2. Java ビルド パス→ ライブラリ

  3. JRE System Libraryを選択 →Editボタンをクリック

  4. 「インストールされた JRE...」ボタンをクリックします。

  5. JRE を次のように編集します。 Set JRE Home = JAVA_HOME または JAVA_HOME\jre

スクリーンショット:

ここに画像の説明を入力してください

于 2013-03-20T09:56:18.850 に答える
2

インストールされたJREの場所をJDK自体に存在するディレクトリに変更することで問題を解決しました。環境変数の適切な値を設定JAVA_HOMEしても、問題は解決しませんでした。

私の場合、2つのディレクトリがあります

  • C:\Program Files\Java\jdk1.7.0_03 --> For JDK

  • C:\Program Files\Java\jre7 --> For JRE

最初にC:\Program Files\Java\jre7、Eclipse でインストール済み JRE として設定しましたが、Maven の場合も同じエラーが発生していました (Ant は正常に動作していました)。

C:\Program Files\Java\jdk1.7.0_03\jre7インストールされた JREを Eclipse にインストールされた JRE に変更することで、問題は解決されます。

于 2012-08-16T04:59:49.493 に答える
2

Maven は JDK ではなく JRE を使用しているようです。おそらく、JDK をインストールする前に Maven をインストールしましたか?

設定ファイルを確認してください。システム、ユーザー、プロジェクトの合計 3 つがあります。おそらく、インストール構成 ($M2_HOME/conf/settings.xml) またはユーザーごとの構成 (${user.dir}/.m2/settings.xml) にあります。

于 2010-02-08T16:03:23.597 に答える
2

プロジェクトを特定の Eclipse 構成から実行している場合は、適切な JDK をあなたのEclipse設定。

于 2013-02-04T15:10:59.967 に答える
1

解決策は簡単です。EclipseWindows → PreferencesJavaInstalledJREsがを指している場合がありますC:\Program files\Java\jre

に変更するとC:\Program files\Java\JDK 6.0\jre100%動作します。

于 2011-12-21T12:50:15.770 に答える
1

Eclipse のメニューWindowPreferences...JavaInstalled JREに移動し、JRE ではなく、インストールした JDK を指す必要があります。

于 2017-01-07T09:40:22.103 に答える
1

Amazon Linux でも同じ問題が発生しました。JDK の開発者バージョンをインストールする必要があったことがわかりました。

sudo yum -y install java-1.7.0-openjdk-devel
于 2015-06-20T05:53:36.250 に答える
1

他のいくつかの人が述べたように、Eclipse WindowPreferences...JavaInstalled JREsは、JRE ではなく、インストールしたJDKを指す必要があります。そうして初めて、エラー メッセージに記載されているフォルダを見つけることができます。../lib

これでも、問題が再発する可能性があります。Eclipse v4.2 (Juno)での私の方法は、メニューMavenUpdate project...を実行することです。その後、問題は消えます。

その理由は、Eclipse で生成されたファイル (.classpath、.project、.preferences) の一部が、これらの問題が発生しているプロジェクトの Subversion にあるためだと思われます。したがって、SVN の更新によって問題が発生し、Eclipse の Maven からの構成の更新によって再び問題が解決されます。

実際の解決策: Eclipse で生成された .files をバージョン管理から省略し、Maven Eclipse プラグインにプロジェクト構成を処理させます。(追加のポインタ/提案は大歓迎です) .

于 2012-07-09T08:02:37.243 に答える
1

メニューウィンドウ設定Javaインストール済み JRE実行環境を使用-> 右側のチェックボックスをクリックします。

于 2011-04-29T13:10:32.493 に答える
1

メニューProjectPropertiesJava Build Pathを右クリックします。

JRE System Path → Editを選択します。ワークスペースのデフォルト JRE を選択し、それを JDK > 1.4 にポイントします。

于 2010-09-08T10:22:36.957 に答える
0

JAVA_HOMEを設定しても問題が解決しない場合は、次のことを試してください。

(新しくインストールしたPCでも同じ問題が発生しました。)

Eclipseを使用していると仮定します。

  • ウィンドウを開く→設定Javaインストールされたjreの。そこにあるものをすべて削除し、使用したいものを追加します(JDK、JREなし!)
  • 同じウィンドウでmaven-installationsを開き、ダウンロードして解凍したMavenインストールをどこかに追加します。(組み込みのMavenインストールは使用しないでください。いくつかの既知のバグがあります。)

それで全部です。あなたのプロジェクトはそのような問題に悩まされることはありません。

于 2012-03-21T01:03:48.510 に答える
0

コンパイラの場所は、JAVA_HOMEが指しているJDKの場所ではなく、表示されているJREの場所にあるコンパイラプラグインのPOMで定義されていると思います。

于 2010-02-08T15:26:09.283 に答える
0

また、Eclipse に更新された変更がすべて含まれていることを確認することもできます。これを行うには、プロジェクトを右クリックし、[更新] メニュー項目を押します。

于 2012-04-16T23:35:13.210 に答える
0

同じ問題がありました。上記のどれもうまくいきませんでしたが、これは私にとってはうまくいきました:

JAVA_HOME を ...\jdk.1.8.0\ から ...\jdk.1.8.0\jre\ に変更しました

于 2016-09-05T10:16:06.703 に答える
0

eclipse.ini の「-vm」が 2 つの別々の行にあることを確認してください。

-vm
C:\Program Files\Java\jdk1.6.0_06
于 2013-01-23T09:50:01.790 に答える
0

(Mavenフォルダーにあります)で指定JAVA_HOMEする必要があり、問題は解消されます。mvn.ini/bin

于 2011-12-22T20:16:47.417 に答える
0

[プロパティ] ダイアログに移動し、プロジェクトを右クリックします。

Linked resourcesで、JAVA_HOME という名前の新しいパスを追加し、「C:\Program Files\Java\jdk1.8.0_73」のような JDK の場所を入力します。

それで全部です!!

于 2016-02-10T19:52:22.990 に答える
0

他の多くの回答では、Eclipse が JRE ではなく JDK を指すように指示されています。

これを行う方法について、より具体的/明確な[ここでの回答で見たよりも]段階的な別の回答を次に示し ます。JDKをインストールするにはどうすればよいですか?

それが、この同じ問題で私を解決したものです。

于 2012-11-22T18:24:05.867 に答える
0

Eclipse → PreferencesJavaInstalled JREs → 指定した JRE の場所を選択し、EditAdd External JARs をクリックしてtools.jarファイルを選択します。

于 2017-08-08T08:39:59.803 に答える