1

Maven に 1.6 互換のソースを強制的にコンパイルさせる方法

私はEclipseでMavenを使用してWebアプリプロジェクトを作成しました。3.0 バージョンを使用するように web.xml を変更 -> 次に構成を更新すると、Tomcat を起動できなくなりました。ソース1.6と互換性があるようにmavenを強制的にコンパイルする必要があることがわかりました。追加する必要があります

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
 <configuration>
    <source>1.7</source>
    <target>1.7</target>
    <showDeprecation>true</showDeprecation>
    <showWarnings>true</showWarnings>
    <executable>${env.JAVA_HOME_7}/bin/javac</executable>
    <fork>true</fork>
</configuration>

しかし、日食の効果的なポンは編集できません

Eclipseと互換性のあるmaven、またはmavenにソース1.6バージョンを強制的にコンパイルさせる他の方法はありますか?

4

3 に答える 3

4

あなたはそこにそれを持っています。1.7の代わりに1.6を置くだけです:

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.0</version>
    <configuration>
      <source>1.6</source>
      <target>1.6</target>
    </configuration>
  </plugin>

参照: http: //maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html

また、必要がなければ、追加の構成は避けます。

于 2013-02-11T08:46:52.047 に答える
1

編集:

1.7java1.6の代わりに使用してください。

EDIT2:

あなたのバージョン:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
      <source>1.7</source>
      <target>1.7</target>
      <showDeprecation>true</showDeprecation>
      <showWarnings>true</showWarnings>
      <executable>${env.JAVA_HOME_7}/bin/javac</executable>
      <fork>true</fork>
    </configuration>
</plugin>

する必要があります:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
      <source>1.6</source>
      <target>1.6</target>
      <showDeprecation>true</showDeprecation>
      <showWarnings>true</showWarnings>
      <executable>${env.JAVA_HOME_7}/bin/javac</executable>
      <fork>true</fork>
    </configuration>
</plugin>
于 2013-02-11T08:45:55.417 に答える
1

明確にするために:

プロジェクト POM では、実際にすべての構成を記述するわけではありませんが、既定の構成を上書き (そして最終的には機能を追加) します。

Eclipse の "Effective POM" はその結果を表示するので、実際には編集できません。

ただし、POMに構成を追加すると(他の回答で提案されているように)、デフォルト設定が上書きされます。そのまま使用され、「有効なPOM」に表示されます。

于 2013-02-11T09:53:06.507 に答える