web-dev-qa-db-ja.com

Mavenでのビルドが成功してもEclipseでエラーが表示される

私はここで非常に奇妙なものを持っています、「mvn clean install」と入力すると、私のビルドはmavenで成功しますが、Eclipseにインポートするとエラーが表示されます。

自分で見て:

mvn clean install

Eclipse

`pom.xmlからクォーツを除外することで問題は解決したと思いますが、その理由を知りたいと思います。


PS:これはpom.xml見たい場合:

<project xmlns="http://maven.Apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.Apache.org/POM/4.0.0 http://maven.Apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.thongvan.mpclient</groupId>
  <artifactId>MyClient</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>MyClient</name>
  <url>http://maven.Apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>com.thongvan.mp</groupId>
        <artifactId>MyEjb</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
    <dependency>
        <groupId>org.jboss.jbossas</groupId>
        <artifactId>jboss-as-client</artifactId>
        <version>5.1.0.GA</version>
        <type>pom</type>
    </dependency>
  </dependencies>
</project>

編集

ご覧のとおり、クォーツはこちらです: quartz

31
Eildosa

時々、私はこれらのタイプの問題も受け取ります。

一般的に、EclipseとMavenで私にとって最もうまくいったのは:

  • 最新のm2e Eclipseプラグインを使用する
  • Maven 3を使用する
  • M2eがコマンドラインで使用しているバージョンと同じMavenバージョンを使用していることを確認してください(内部バージョンではありません)
  • プロジェクトをMavenプロジェクトとしてインポートして、Eclipseプロジェクトファイルを生成します
15
Puce

インポート後にMavenプロジェクトを更新すると、この問題が修正されました。

プロジェクトを右クリック-> Maven->プロジェクトを更新。

48
Hasnaa Ibraheem

これらのバージョンを使用している場合、他の賛成の回答は機能しませんでした:

  • エクリプスネオン
  • Maven 3
  • m2e 1.7

これは私がしなければならなかったことです:

  1. EclipseインターフェースからEclipseプロジェクトを削除します(ディスク上のプロジェクトの内容を削除しないでください)
  2. ファイルエクスプローラーまたはターミナルでプロジェクトのルートディレクトリに移動します
  3. これらのファイルを削除します:.classpath.project、および.settingsディレクトリ
  4. Eclipseに戻り、ファイル->インポート...-> Maven->既存のMavenプロジェクト
8
Mike S

Eclipseプロジェクトにエラーは表示されないが、プロジェクト名に赤いアイコンが表示され続ける場合。 mvn Eclipse:eclipse

次に、Eclipseですべてのプロジェクトを選択し、右クリック> Maven>プロジェクトの更新

それが役に立てば幸い。

5
Vien Ng

時々、Mavenの更新も上記のすべても機能します。そのため、どのインポートステートメントがエラーを与えるかを確認してから、通常はc:user/ur-PC-NAME/.m2にある特定のlibファイルに移動して、その.jarファイルを削除します。

次に、Eclipseで、プロジェクト> maven> update mavenを右クリックします。

5
Shamanth Ramesh

試してみてください mvn Eclipse:eclipse

そして、M2_REPO変数はローカルリポジトリを指します。

4
plucury

M2eの「維持された」EclipseプロジェクトがPOMの実際のプロジェクトと同期していない場合があります(その理由はたくさんあります)。 m2e 0.8以降を使用していると想定し、プロジェクトを右クリックします。Mavenの下には、通常便利な2つのエントリがあります。依存関係の更新とプロジェクト構成の更新

それらを試してみて、Eclipseがプロジェクトを更新してビルドするためにそれをクリックした後、しばらく待ちます。通常、同様の問題を解決します。

4
Adrian Shum

これは、m2Eclipseが変更されたPOMファイルの内容に対応するようにビルドパスを更新していない場合によく起こります。 Mavenコンテキストメニューには、構成を更新するためのエントリがあります。

3
Stephen C

私のプロジェクトは、Java 1.5に設定されたプロジェクト固有のJavaコンパイラ設定を使用していることがわかりました。さらに、Maven、m2e、Eclipse全般のJavaコンパイラー設定がすべてJava 1.8に設定されている場合、プロジェクトファセットは引き続きJava 1.5を参照していました。

1
espressoT

私の場合、次のようなJavaビルドパスに関する問題もありました。 "ビルドパスは実行環境J2SE-1.5を指定します。この環境と完全に互換性のあるJREはワークスペースにインストールされていません。 "この解決済みのコンパイルエラーを修正。

1
sergeyan

あなたはビルドパスからクォーツを削除し、問題を解決する内部的に(Eclipseで)依存関係を更新する場合は存在しないm2ローカルリポジトリへの参照であるライブラリ(quartz-1.5.2.jar)を持っています

0
mb2015

JREの異なる/古いバージョンを使用してみてください。私の場合、JRE8からJRE7に戻すと、問題はなくなりました。

0
Yan

Eclipseのアップグレードまたは変更などを行うと、古いEclipse固有のファイル(.classpath、.project、および.settings)が新しいバージョンのEclipseと互換性がなくなる場合があります。そのため、Mavenを使用してこのEclipse固有のファイルを再生成する必要があります。だからあなたのEclipseプロジェクトルートでこれを試してください

mvn Eclipse:eclipse
0
Youness HARDI

私の場合、pom.xmlの依存関係のいくつかのバージョンを変更すると、Eclipseがすべてのエラーを表示し始めますが、コマンドラインmvn clean install buildは正常に実行されます

  1. 依存関係の問題も破損しているため、.m2リポジトリから手動で変更した依存関係のフォルダー(私の場合はorg.Apache.beamの下のすべて)を削除しました。
  2. mvn cleanプロジェクトをビルドし、これにより依存関係が再度ダウンロードされました
  3. プロジェクトを右クリック:maven->プロジェクトを更新
  4. (ディスクからではなく)Eclipseからプロジェクトを削除し、再インポートします(これにより、実際には1つのエラーが残ります。その後、削除して再インポートします)。
0
Angia

Eclipseでプロジェクトを削除して再インポートします(もちろんファイルを削除せずに)。他の答えとは異なり、私はこれがなぜ起こるのか調べていませんが、うまくいきます。 poof-コンパイルエラーが消えた

0
Rob McFeely