2012-01-21 5 views
1

私はいくつかのJavaクラスをコンパイルするためにmavenを使用しています。クラスの一つは、注釈(@Override)を持っているので、私はその後、mvn compileを実行すると、私はエラーを取得:maven2でアノテーションを持つプロジェクトをコンパイルする際にエラーが発生しました

私のシステムでのJavaのバージョンは、JDKある
annotations are not supported in -source 1.3 
(use -source 5 or higher to enable annotations) 
     @Override 

annotations are not supported in -source 1.3 
(use -source 5 or higher to enable annotations) 
     @Override 

が1.6.29まだ私はこのエラーを理解することはできませんが。 だから私はjdkのバージョンを確認する方法があります。mavenはこれを使用していて、おそらくそれを変更します。 他の解決策はありますか?おかげさまで

答えて

2

Javaソースレベル1.5をコンパイルするためのコンパイラフラグを設定するように、Mavenビルドに指示する必要があります。これは、プラグインの設定を追加して、pom.xmlファイル内で実行されます。

<plugins> 
[...] 
    <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.3.2</version> 
      <executions> 
       <execution> 
        <id>default-compile</id> 
        <configuration> 
         <source>1.5</source> 
         <target>1.5</target> 
        </configuration> 
       </execution> 
       </executions> 
    </plugin> 
[...] 
</plugins> 
+0

おかげでたくさんの..does JDKのバージョンは、この1.5スタンド:例えば

?また、私はグローバルsettngs.xmlファイルで同じことをすることができますか? – pranay

+0

はい、いいえ。 _source_タグを1.5に設定すると、mavenコンパイラプラグインはjavac呼び出しに_-source 5_引数を渡します。同様に_target_タグは_-target_引数を渡すためのタグです。これはJavaソースコードレベルを設定するためのものです.jdk 1.6は3,5,6のすべてのレベルをサポートできます。 –

関連する問題