1

私は MuleSoft の初心者です。Maven Mule プロジェクトを作成しましたが、フローの 1 つにコンポーネント Http Request があります。このコンポーネントには、属性「ホスト」があります。ただし、テスト環境と本番環境の 2 つの環境があります。Mavenで作成されたプロファイルに応じて、「ホスト」属性値を動的に変更することは可能ですか?

4

2 に答える 2

2

良い質問!実際に探しているのは、環境固有の構成です。

Mule は Maven プロファイルに基づいて構築され、これをそのまま提供します (OOTB)

このリンクを見てください

要約すると、次のように http エンドポイントを構成します

<http:listener-config name="HttpListenerConfiguration"
                    doc:name="HTTP Listener Configuration"
                    host="${mule.env.host}"
                    port="${mule.env.port}"
                    basePath="${mule.env.path}" />

次に、環境固有のプロパティ ファイルを用意します。

qa.basePath=test/products
qa.host=localhost
qa.port=8082

prod.basePath=products
prod.host=www.acme.com
prod.port=8081

ビルド時に、特定の環境用にビルドしていることを指定すると、それらの特定の値が構成内で置き換えられます

更新: Maven プロファイルに基づくプロパティ ファイルの選択

環境固有のプロパティ ファイルを作成すると、プロジェクト構造と pom.xml は次のようになります。

pom.xml とプロジェクト構造

リソースセクションで問題が発生したことを覚えているので、関連するセクションをここに貼り付けます

<plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <version>1.7</version>
                <executions>
                    <execution>
                        <id>add-resource</id>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>add-resource</goal>
                        </goals>
                        <configuration>
                            <resources>
                                <resource>
                                    <directory>src/main/app/</directory>                                    
                                </resource>
                                <resource>
                                    <directory>mappings/</directory>
                                </resource>
                                <resource>
                                    <directory>src/main/api/</directory>
                                </resource> 
                                <resource>
                                    <directory>src/test/resources/</directory>                                  
                                </resource>                             
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

mule-project.xml は次のようになります。

mule-project.xml

これを並べ替えて、maven ビルドでプロファイルを選択するだけです

mvn clean compile パッケージ -P qa

于 2015-08-03T22:48:38.893 に答える