我有一个部署到WildFly 8.1.0-Final的Java EE 7项目。我使用由Maven管理的独立Wildfly服务器(即每个mvn clean
上的干净配置)进行测试,以及" normal"远程服务器。
为了使用maven-wildfly-plugin(1.0.2.Final)部署到两台服务器,我配置了两个Maven配置文件: wildfly-local ,它定义了本地用户名,密码,和端口号;和 wildfly-remote ,它定义了远程用户名,密码和端口号。
但是,远程服务器以域模式运行,而本地服务器则不运行。因此,我需要为远程服务器定义一个带有服务器组的域配置,如下所示:
...
<plugin>
<artifactId>wildfly-maven-plugin</artifactId>
<configuration>
<hostname>${wildfly-hostname}</hostname>
<username>${wildfly-username}</username>
<password>${wildfly-password}</password>
<domain>
<server-groups>
<server-group>${wildfly-server-group}</server-group>
</server-groups>
</domain>
</configuration>
...
</plugin>
...
${wildfly-hostname}
以及其他三个属性在配置文件中定义,此配置有效。但是,独立的,非&#34;域模式&#34;本地测试服务器不允许部署完全定义服务器组的应用程序。
我的第一个想法是在远程配置文件中定义嵌套属性,如下所示:
<profile>
<id>wildfly-remote</id>
<properties>
...
<wildfly-domain>
<server-groups>
<server-group>*my server group name*</server-group>
</server-groups>
</wildfly-domain>
...
</properties>
</profile>
...和本地配置文件中的简单属性,如下所示:
<profile>
<id>wildfly-local</id>
<properties>
<wildfly-domain/>
</properties>
</profile>
Maven不喜欢这样,因为它无法解析预期文本的标签。
有没有办法定义一个&#34;资源&#34;它嵌套在一个Maven配置文件中,但在另一个Maven配置文件中是否平坦?
答案 0 :(得分:3)
属性只是简单的键值对,不能将该值解析为标记。
将整个配置移动到配置文件中。