SORU
15 Mart 2011, Salı


Nasıl başka bir profili aktif hale geçiyor bile activeByDefault aktif olan Maven profilleri tutmak için mi?

Benim pom.xml bir profili var explicitely kullanılmadığı sürece her zaman aktif olmalı (-P !firstProfile). ActiveByDefault bayrağını kullanarak bu çözdüm:

<profiles>
  <profile>
    <id>firstProfile</id>
    <activation>
      <activeByDefault>true</activeByDefault>
    </activation>
    ...
  </profile>
</profiles>

Şimdi bu sadece profil çok aktif ise aktif olmalıdır ikinci bir profil var aynı pom.xml tanımlı (-P secondProfile). Davranış varsayılan: etkin, secondProfile firstProfile etkin değil. Başka bir noktada ilk tercihi yanı sıra ikinci bir profili aktive etmek istiyorum. Şimdi sorun ise" firstProfile ne yazık ki devre dışı olur. "- P secondProfile ile yaptığım bu. Maven belgeleri, bu devletler:

... Bu profil otomatik olarak yapılacaktır tüm aktif sürece başka bir oluşturur aynı POM profil etkinleştirildi daha önce açıklanan kullanarak bir yöntemleri. Aktif olan tüm profilleri varsayılan olarak otomatik olarak POM bir profili aktif komut satırında aktif ya. aktivasyon config ile. ...

Bir şekilde firstProfile her zaman etkin tutmak için nasıl bir olasılık (settings.xml bunu bildirmek zorunda kalmadan) var mı?

CEVAP
20 EYLÜL 2011, Salı


Bir numara activeByDefault uzak durun ve bunun yerine özellik, örneğin yokluğu: tercihi etkinleştirmek için

<profiles>
  <profile>
    <id>firstProfile</id>
    <activation>
      <property>
        <name>!skipFirstProfile</name>
      </property>
    </activation>
    ...
  </profile>
</profiles>

O -DskipFirstProfile profil devre dışı bırakmak gerekir veya -P !firstProfile, ama aksi takdirde tercih etkin olacaktır.

Bakın: Maven: The Complete Reference : Activation by the Absence of a Property

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Liz Morgan

    Liz Morgan

    4 Aralık 2011
  • NCIX Tech Tips

    NCIX Tech Ti

    2 Ocak 2007
  • Ryan Ha

    Ryan Ha

    9 NİSAN 2006