SORU
30 Aralık 2009, ÇARŞAMBA


Proje kullanma hakkında uyarı.üst.Maven 3 modül sürüm Sürüm

Modüller her zaman ebeveyn olarak, genellikle modülünde aşağıdaki gibi bir şey yaptım aynı sürüm pom.xml bu kalmalarını istiyorum multi-modül projeleri: maven

  <parent>
    <groupId>com.groupId</groupId>
    <artifactId>parentArtifactId</artifactId>
    <version>1.1-SNAPSHOT</version>
  </parent>

  <groupId>com.groupId</groupId>
  <artifactId>artifactId</artifactId>
  <packaging>jar</packaging>
  <version>${project.parent.version}</version>
  <name>name</name>

Bunu yaparken aşağıdaki uyarıyı alıyorum 3.0-alfa-5, maven kullanmaya başladığımdan beri.

[WARNING] 
[WARNING] Some problems were encountered while building the effective model for com.groupid.artifactId:name:jar:1.1-SNAPSHOT
[WARNING] 'version' contains an expression but should be a constant. @ com.groupid.artifactId:name::${project.parent.version}, /Users/whaley/path/to/project/child/pom.xml
[WARNING] 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] 
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]

Herhangi bir üst versiyonu için bir modül versiyonu bağlama ile gerçek sorunun ne olduğunu bilmek merak ediyorum? Ya da bu, herhangi bir ifade, ne olursa olsun, proje olsun, ne zaman genel bir uyarı bir durumdur.üst.sürüm Sürüm öğesi için kullanılır.

CEVAP
30 Aralık 2009, ÇARŞAMBA


Herhangi bir üst versiyonu için bir modül versiyonu bağlama ile gerçek sorunun ne olduğunu bilmek merak ediyorum? Ya da bu, herhangi bir ifade, ne olursa olsun, proje olsun, ne zaman genel bir uyarı bir durumdur.üst.sürüm Sürüm öğesi için kullanılır.

Peki, bu test etmek için kolay olurdu. Merak ettim çünkü, ben sadece aşağıdaki pom kullanarak bunu yaptı

<project>
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <artifactId>parent</artifactId>
    <groupId>com.mycompany</groupId>
    <version>1.0-SNAPSHOT</version>
  </parent>
  <groupId>com.mycompany</groupId>
  <artifactId>module</artifactId>
  <version>${myversion}</version>
  <name>module</name>
  <url>http://maven.apache.org</url>
  <properties>
    <myversion>1.0-SNAPSHOT</myversion>
  </properties>
  ...
</project>

Ve maven gerçekten şikayet ediyor:

[WARNING] 'version' contains an expression but should be a constant. @ com.mycompany:module:${myversion}, /home/pascal/Projects/maven-maven3-testcase/module/pom.xml

Dürüst olmak gerekirse, bu maven burada bence çok mantıklı <version> eleman (en azından proje.bir özelliği kullanmak için yapmaz. şikayet sürüm) ve güzel olması maven

Ve eğer alt modül, üst pom sürümünü kullanmak istersenizsadece alt sırada oturan <version> etiketi Kaldıronlar üst versiyonu devralır. Şu anda ne yapıyorsan, sadece işe yaramaz.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Capcom Unity

    Capcom Unity

    5 NİSAN 2010
  • Chilla Frilla™

    Chilla Frill

    7 Aralık 2006
  • NightShader1

    NightShader1

    25 Temmuz 2006