SORU
18 HAZİRAN 2009, PERŞEMBE


Üst dizini gösteren Maven2 özelliği

Çoklu modülleri bir proje, bunun gibi:

main-project/
    module1/
    module2/
        sub-module1/
        sub-module2/
        sub-module3/
        ...
    module3/
    module4/
    ...

Maven2 özellikleri bir dizi olan projemi yayınlamak istiyorum çevreye bağımlı () tanımlamak gerekiyor. Özellikleri bir sürü var gibi <properties> kullanmayacağım... Böylece, Properties Maven2 plugin kullanıyorum.

Özellikleri main-project/ dizininde bulunan dosyaları. Nasıl ana doğru dizin özellikleri, dosya bulmak için herhangi bir çocuk için belirtmek için pom.xml set alabilir miyim?

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>properties-maven-plugin</artifactId>
    <version>1.0-alpha-1</version>
    <executions>
        <execution>
            <phase>initialize</phase>
            <goals>
                <goal>read-project-properties</goal>
            </goals>
            <configuration>
                <files>
                    <file>???/env_${env}.properties</file>
                </files>
            </configuration>
        </execution>
    </executions>
</plugin>

Ancak o zaman Maven2 ilk modülü derler <file>env_${env}.properties</file>, main-project/env_dev.properties dosyayı bulmak. Eğer başım belaya girerse <file>../env_${env}.properties</file>, Bir hata alt modül herhangi bir düzeyde, bir üst düzeyde, ya da ortaya çıkacaktır.

CEVAP
19 HAZİRAN 2009, Cuma


Her pom bir özellik ana proje dizini bulmak için ayarlamayı deneyin.

Üst:

<properties>
    <main.basedir>${project.basedir}</main.basedir>
</properties>

Çocukları:

<properties>
    <main.basedir>${project.parent.basedir}</main.basedir>
</properties>

İçinde torunları:

<properties>
    <main.basedir>${project.parent.parent.basedir}</main.basedir>
</properties>

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • MultiPlayStationMan

    MultiPlaySta

    17 Aralık 2009
  • RiceBunny

    RiceBunny

    16 ŞUBAT 2006
  • Trevor Eckhart

    Trevor Eckha

    19 Aralık 2009