成果物のファイル名にプロファイル名を入れたい
Maven2弱者です。
「mvn -P production package」のようにプロファイルを指定して成果物を生成した際、「hoge-0.0.1-production.war」のように成果物のファイル名に指定したプロファイルの名称が入るようにしたいのですが、良い方法が分かりません。
pom.xml内で、実行時に指定されたプロファイルの名称を取得することができれば良いのですが、${profile}や${profile.id}では取得できずnullになってしまいます。
仕方がないので、pom.xml内でプロファイル毎にプロパティを定義して、finalNameで定義したプロパティを使用するようにしています。
<profiles> ... <profile> <id>production</id> <properties> <profile.name>production</profile.name> </properties> </profile> </profiles> <build> <finalName>${artifactId}-${version}-${profile.name}</finalName>
せっかくprofileという仕組みがあるのだから、自前で定義しなくても取れそうなものですが…。