2017-05-31 9 views
0

私の問題の解決策が見つかりません。要するに :この構成で耳/のpom.xml内のすべての作業を完全にMaven-ear-pluginカスタム最終名

<project ...> 
    <build> 
    <finalName>${project.artifactId}</finalName> 
    .... 
    </build> 
</project> 

しかし、私はfinalnameするタイムスタンプを追加しようとすると:

... 
<finalName>${project.artifactId}-${maven.build.timestamp}</finalName> 
... 

を私はこのエラーを取得します

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-ear-plugin:2.8:generate-application-xml (default-generate-application-xml) on project soc-ear: Unable to copy application.xml to final destination: The file, directory, or volume name syntax is incorrect

いくつかのアイデア?事前に感謝

+0

単純な解決策は、各ビルドでearファイル名を変更しないことです。タイムスタンプはファイル作成時に作成され、追加情報が必要な場合はMavenリソースプラグインを使用してビルドプロパティファイルに各ビルドを設定し、そこにプロジェクトバージョンとタイムスタンプを含めます。耳のファイル名を絶対に変更する必要がある場合は、プロジェクトの最終的な名前ではなく、earプラグインの設定でbundleFileName要素を変更してください。 http://maven.apache.org/plugins/maven-ear-plugin/ear-mojo.html –

+0

を参照してください。finalNameタグはターゲットフォルダ内のファイル名のみですが、インストールされた結果の名前の名前には影響しません'mvn install'または' mvn deploy'を経由してリモートリポジトリにデプロイされたもの.... – khmarbaise

+0

bundleFileNameで私は耳の名前を変更することはできませんが、モジュール名のみ変更できます。私は耳の最終的な名前を変更する必要があります – Alessandro

答えて

0

解決策が見つかりました。 ちょうどプラグイン

<build> 
     <plugins> 
      <plugin> 
       <artifactId>maven-ear-plugin</artifactId> 
       <configuration> 
        <finalName>${project.artifactId}-${maven.build.timestamp}</finalName> 
        ... 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

にプロパティを移動し、私は、一般的なビルドではなく、プラグインにそれを置くことの違いを知りませんが、それは作業を行い、最終的な名前を編集します。

関連する問題