我需要能够对像这样的Maven插件使用“变量”:
<plugin>
<groupId>com.jelastic</groupId>
<artifactId>jelastic-maven-plugin</artifactId>
<version>1.8.4</version>
<configuration>
<api_hoster>${api_hoster}</api_hoster>
<email>${email}</email>
<password>${password}</password>
<environment>${environment}</environment>
<!--<context>[specify the context if you need it]</context>-->
<!--<comment>[insert comment if you need it]</comment>-->
</configuration>
</plugin>
已经在基本目录中设置了属性文件,并使用了插件:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>${basedir}/jelastic.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
仍然,插件中的变量无法解析,这可能是什么问题?
答案 0 :(得分:1)
您必须在项目或配置文件中将这些变量声明为<properties>
或将它们作为env变量传递,例如mvn whatever -Dyourprop=value
了解属性:https://maven.apache.org/pom.html#Properties
了解个人资料:https://maven.apache.org/guides/introduction/introduction-to-profiles.html
答案 1 :(得分:1)
将这些行添加到您的POM:
<build>
<resources>
<resource>
<includes>
<include>**/*.properties</include>
</includes>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
此属性文件:
api_hoster:${api_hoster}
email:${email}
password:${password}
environment:${environment}
并通过提及个人资料调用任何Maven插件:
mvn clean -Pname