3

web.xml ファイルにこのようなものがあるとしましょう。

<filter name="foo">
  <init-param>
    <param-name>fooBarUrl</param-name>
    <param-value>http://foo.bar.com</param-value>
  </init-param>
</filter>

dev/test/production に対して (上記の param-value に対して) 異なる URL 値があるとします。アプリケーションが別のステージに移動するたびにこれを変更する必要をなくすために、pom でフィルターやプロファイルを使用できる方法はありますか? 開発用の IE はhttp://localfoo.com、テスト用の IE はhttp://testserver.comなどになります。

4

2 に答える 2

10

Maven のリソース フィルタリングを使用して、ビルド時にプロパティを値に置き換えることができます。たとえば、さまざまな Maven プロファイルを使用してプロパティ値を設定します。

一方、サーブレット パラメーターを使用してそれらをコンテキスト構成に移動すると、web.xml がそれらを参照し、.war ファイルがデプロイされるアプリケーション サーバーで実際に構成されます。このように、アプリケーション サーバー管理者は、サーバー レベルで構成するだけで、各環境で同じ war ファイルを再利用できます。

たとえば、Tomcatでは、context.xml ファイルに値を設定できます。

<Context>
  ...
  <Parameter name="targetURL" value="http://testserver.com"
     override="true"/>
  ...
</Context>
于 2012-06-21T20:01:34.277 に答える
0

maven-replacer-pluginは、ビルド時にこのようなテキスト、パターン、およびバージョンの置換を行うためにプロジェクトで使用するものです。

于 2012-06-22T04:43:32.110 に答える