10

次の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 Project 2.4 セットがあります。

次のプラグインがあります

ソナー 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.fake.company</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 は注釈を広範囲に使用し、J2SE 6.0 以降が必要です」と述べています。

何か案は?

4

4 に答える 4

9

これはバグで、SR2 でない場合は Luna で修正されています。http://bugs.eclipse.org/416704

于 2013-10-16T15:21:36.723 に答える
0

1.6 JDK を変更できないことはわかっていますが、次の解決策が他の人に役立つ可能性があります。

私の場合、JDK 1.6 と 1.7 の両方を使用しています。提案された解決策をいくつか試しましたが、成功しませんでした。

したがって、pom.xml で jdk 1.6 から jdk 1.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を使用することだったからです)。

于 2014-04-25T17:18:21.573 に答える