Maven 2 Maven 3配置文件属性-增强还是bug?
在Maven 2中,我可以设置如下配置文件属性:Maven 2 Maven 3配置文件属性-增强还是bug?,maven-2,maven,maven-3,Maven 2,Maven,Maven 3,在Maven 2中,我可以设置如下配置文件属性: <profiles> <profile> <id>test</id> <properties> <region>test</region> <application-url>http://localhost:8080/myTestApp</applicatio
<profiles>
<profile>
<id>test</id>
<properties>
<region>test</region>
<application-url>http://localhost:8080/myTestApp</application-url>
<cookie-name>TestCookie</cookie-name>
</properties>
</profile>
<profile>
<id>production</id>
<properties>
<region>production</region>
<application-url>http://prodserver/myProductionApp</application-url>
<cookie-name>ProductionCookie</cookie-name>
</properties>
</profile>
<profiles>
当我指定-p production
时,maven再次用正确的属性替换文本
<bean id="cookie-name" class="java.lang.String">
<constructor-arg value="ProductionCookie"/>
</bean>
随着我们支持的环境和客户数量的增加,我已经更多地利用了这一功能
我曾尝试升级到Maven 3,但这种行为似乎已经消失或被破坏。我似乎找不到它被什么取代了
有人对我如何或是否可以升级到Maven3,同时保留这种行为有什么见解吗
我曾尝试升级到Maven 3,但这种行为似乎已经消失或被破坏。我似乎找不到它被什么取代了
资源过滤在Maven 3上运行良好。鉴于以下项目结构:
.
├── pom.xml
└── src
├── main
│ ├── java
│ │ └── com
│ │ └── stackoverflow
│ │ └── App.java
│ └── resources
│ └── beans.xml
└── test
└── java
└── com
└── stackoverflow
└── AppTest.java
其中beans.xml
包含:
<bean id="cookie-name" class="java.lang.String">
<constructor-arg value="${cookie-name}"/>
</bean>
使用任何配置文件运行maven,例如:
$ mvn -P test process-resources
[INFO] Scanning for projects...
...
$mvn-P测试过程资源
[信息]正在扫描项目。。。
...
产生预期的结果:
$ cat target/classes/beans.xml
<bean id="cookie-name" class="java.lang.String">
<constructor-arg value="TestCookie"/>
</bean>
$cat target/classes/beans.xml
通过以下方式进行测试:
$ mvn --version
Apache Maven 3.0 (r1004208; 2010-10-04 13:50:56+0200)
Java version: 1.6.0_22
Java home: /usr/lib/jvm/java-6-sun-1.6.0.22/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux" version: "2.6.35-22-generic" arch: "i386" Family: "unix"
$mvn—版本
ApacheMaven3.0(r1004208;2010-10-0413:50:56+0200)
Java版本:1.6.0_22
Java主页:/usr/lib/jvm/Java-6-sun-1.6.0.22/jre
默认区域设置:en_US,平台编码:UTF-8
操作系统名称:“linux”版本:“2.6.35-22-generic”arch:“i386”系列:“unix”
如果这不是您得到的,请提供一些允许复制的片段。maven resources插件的最新发布版本(2.4.3)已损坏
一次只能发布一个链接,显然每3分钟只能发布一个答案:-(
您在pom或profiles.xml文件中定义了概要文件吗?我直接在pom中定义了概要文件。 $ mvn -P test process-resources [INFO] Scanning for projects... ...
$ cat target/classes/beans.xml
<bean id="cookie-name" class="java.lang.String">
<constructor-arg value="TestCookie"/>
</bean>
$ mvn --version
Apache Maven 3.0 (r1004208; 2010-10-04 13:50:56+0200)
Java version: 1.6.0_22
Java home: /usr/lib/jvm/java-6-sun-1.6.0.22/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux" version: "2.6.35-22-generic" arch: "i386" Family: "unix"