プロジェクトpom.xmlファイルでプロファイルを使用して、特定のサーバーへのwarファイルの展開を制御しようとしています。たとえば、私はローカルプロファイルと開発サーバープロファイルを持っています。ここで私は、私はこれをしようとすると、私は、私の設定10.16.21.60
で提供されるIPアドレスに接続しようとすることの代わりを見ることができますMaven Tomcatはプロファイル付きのプラグインを展開します
mvn org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy
を呼び出しています、私は
<profiles>
<profile>
<id>local</id>
<activation>
<activeByDefault>true</activeByDefault>
<property>
<name>target</name>
<value>local</value>
</property>
</activation>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://10.16.21.60:8080/manager/text</url>
<server>localTomcat</server>
<path>/</path>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>dev</id>
<activation>
<property>
<name>target</name>
<value>dev</value>
</property>
</activation>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://devserverurl:8080/manager/text</url>
<server>devTomcat</server>
<path>/</path>
</configuration>
</plugin>
</plugins>
</build>
</profile>
を自分のプロファイルを設定している方法です代わりにlocalhost
に接続しようとしています。私はdevTomcat
とlocalTomcat
の両方をローカルのsettings.xml
ファイルにユーザ名とパスワードで定義しています。
私はその後、私はプラグインのデバッグ出力で見ることができます詳細は-X
オプションを追加した場合(強調を追加しました)
[DEBUG] Configuring mojo org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy from plugin realm ClassRealm[plugin>org.apache.tomcat.maven:tomcat7-maven-plugin:2.2, parent: [email protected]] [DEBUG] Configuring mojo 'org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy' with basic configurator --> [DEBUG] (f) charset = ISO-8859-1 [DEBUG] (f) contextFile = .... [DEBUG] (f) ignorePackaging = false [DEBUG] (f) mode = war [DEBUG] (f) packaging = war [DEBUG] (f) path = ... [DEBUG] (f) update = false [DEBUG] (f) url = http://localhost:8080/manager/text [DEBUG] (f) version = 2.2 [DEBUG] (f) warFile = ... [DEBUG] (f) settings = [email protected] [DEBUG] -- end configuration -- [INFO] Deploying war to http://localhost:8080/... [DEBUG] No server specified for authentication - using defaults
私の構成設定がに付着されていることは表示されません!私がこれがうまくいくと思ったのは、local
のプロファイルがアクティブ化されているので、その構成を使用するということです。
私はまた、同じ効果を持つプロファイルなしで、私の<build>
セクションにプラグインを定義してみることもできました。常に認証なしでhttp://localhost:8080
に接続しようとします。
このプロジェクトではgwt-maven-plugin
も使用していますが、これがtomcatプラグインの設定を妨げているかどうかはわかりません。