次の2つのエラーが発生するMavenプロジェクトがあります
JAX-RS(REST Webサービス)2.0をインストールできません:1つ以上の制約が満たされていません。
JAX-RS(REST Webサービス)2.0にはJava 1.7以降が必要です。
JDK 1.6をインストールしています(これを変更することはできません)
プロジェクトファセットには、JAX-RSがチェックされていません。
プロジェクトファセットにはJava 1.6が設定されています。
プロジェクトファセットには、Dynamic Web Project2.4が設定されています。
私は次のプラグインを持っています
Sonar 3.2.0 MercurialEclipse 2.10 EclEmma 2.2.1
Pom.xmlはこれだけです...
<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.pcmsgroup.v21.esi</groupId>
<artifactId>customerservice-war</artifactId>
<version>2.0.0-SNAPSHOT</version>
</project>
web.xmlは
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://Java.Sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://Java.Sun.com/xml/ns/j2ee http://Java.Sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Customer Service</display-name>
</web-app>
クリーニングまたは「Mavenプロジェクトの更新」は違いはありません。
注:これはEclipse-jee-kepler-SR1-win32-x86_64にあります。注:バージョンEclipse-jee-kepler-win32-x86_64ではエラーは発生しません。
注:新しいワークスペースはエラーを変更しません。
注:私はJDK.1.6.0_43を使用しています
「.log」ファイルでこれに関連して確認できる唯一のエラーは。です。
!ENTRY org.Eclipse.osgi 2 1 2013-10-16 15:07:58.816!MESSAGE NLS未使用メッセージ:JaxrsProjectConfigurator_The_project_does_not_contain_required_facets in:org.Eclipse.m2e.wtp.jaxrs.internal.messages
ファセットを追加すると、Java 1.7が必要だと表示されるので、適用させません。
JSR339( JSR339 )は、「APIはアノテーションを広範囲に使用し、J2SE6.0以降を必要とします」と述べています。
何か案は?
.project
ファイルを削除し、ソース管理から削除します。 「インポート」->「既存のプロジェクト」を使用する代わりに、「インポート」->「Mavenプロジェクト」を使用して、m2eにEclipseプロジェクトを構成させます。
これはバグであり、SR2でない場合はLunaで修正されています。 http://bugs.Eclipse.org/416704
1.6 JDKを変更できないことは承知していますが、次の解決策が他の人に役立つ可能性があります。
私の場合、JDK1.6と1.7の両方を使用しています。私はいくつかの提案された解決策を試しましたが、成功しませんでした。
したがって、pom.xmlでjdk1.6からjdk1.7に変更しました。
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
私のファセットでは1.6が設定されていますが、jdk 1.7の使用は私にとってはうまくいきました(私の意図はjdk 1.6を使用することだったため)。
これらのエラーを取り除くだけの場合は、「マーカービュー」でエラーを右クリックし、[削除]をクリックするだけです。