3

プロジェクトフォームをMaven2からMaven3に移植しています。また、いくつかのプラグインのバージョン、つまりmaven-compiler-pluginを2.1から3.0に、maven-resources-pluginを2.6に更新する機会を得ました。

私はそのようなリソースの下にインターフェースを持っています:

public interface Version {
  public static final String VERSION = "${project.version}";
}

そして、私のpom.xmlのビルドでは、次のようになります。

<resources>
  <resource>
    <directory>src/main/resources</directory>
    <filtering>true</filtering>
  </resource>
</resources>

これは以前は機能していました。しかし、Maven 3にアップグレードしてから、バージョンが見つからずにコンパイルが失敗します。

バージョンをコンパイルしていないか、クラスパスに含まれていないことは明らかです。

これに影響を与える可能性のあるMaven3または最新バージョンのmaven-compiler-pluginに変更はありますか?ドキュメントを読んでも何も変わりません...

4

1 に答える 1

3

ターゲットフォルダを以下のように指定する必要があります。現在、ターゲットフォルダを見ると、おそらくそこにVersion.javaファイルがあります。targetPathを追加すると、フィルタリングされた.javaファイルがsrc / javaフォルダーに配置され、ターゲットフォルダーにコンパイルされます。

<resource>
    <directory>src/main/resources</directory>
    <filtering>true</filtering>
     <includes>
       <include>**/*.java</include>
    </includes>
    <targetPath>${basedir}/src/main/java/</targetPath>
</resource>
于 2013-01-04T17:34:22.440 に答える