2013-04-19 10 views
6

Ustawiłem właściwość maven w pliku pom.xml.Zmiana właściwości maven za pomocą zadania Ant

<properties> 
    <build.start.date>someValue</build.start.date> 
</properties> 

Teraz mam ant zadania w następujący sposób:

<loadresource property="build.start"> 
    <url url="http://someUrl?xpath=/*/id/text()"/> 
</loadresource> 

<property name="build.start.date" value="${build.start}"/> 

<echo>Printing Ant Value ${build.start} </echo> 
<echo>Printing Maven Value ${build.start.date}</echo> 

Skutkuje:

[echo] Printing Ant Value 2013-03-15_17-53-08 
[echo] Printing Maven Value 2013-03-16 

Ale spodziewam się zarówno do druku:

[echo] Printing Ant Value 2013-03-15_17-53-08 
[echo] Printing Maven Value 2013-03-15_17-53-08 


I tried <loadresource property="build.start.date"> 
and 
I tried <loadresource property="${build.start.date}"> 

Pytanie brzmi: jak ustawić globalną maven property inside ant task?

+0

Zakładam, że uruchamiasz swój skrypt ant z wtyczką maven-antrun. Wygląda na to, że chcesz przesłonić wartość, która pochodzi od maven, prawda? Właściwości mrówki są ustawiane raz, a następnie nigdy nie można ich zastąpić. – adrianboimvaser

+0

To nie są właściwości mrówek, muszę zresetować właściwości maven, wewnątrz wtyczki antrun. – avijendr

+0

'' próbuje nadpisać już ustawioną właściwość. Właściwość została ustalona przez Maven. – adrianboimvaser

Odpowiedz

12

Znalazłem rozwiązanie dla tego.

Przede wszystkim trzeba mieć 1.7 wersję antrun plugin:

<plugin> 
<groupId>org.apache.maven.plugins</groupId> 
<artifactId>maven-antrun-plugin</artifactId> 
<version>1.7</version> 
.... 
</plugin> 

Następnie w konfiguracji trzeba mieć exportAntProperties do prawda (false domyślnie):

<configuration> 
<exportAntProperties>true</exportAntProperties> 
Powiązane problemy