SORU
18 Mart 2010, PERŞEMBE


Maven içinde Version.java bir dosya oluşturmak

Ant komut dosyası kullanarak inşa bir Java projem var. Proje Maven dönüştürmek için çalışıyorum.

Görevleri aşağıdaki gibidir: derleme zaman statik bir Dize temsilini içeren bir Java kaynak dosyası version.java adı oluşturur

package com.foo.bar;
public final class Version {
 public static String VERSION="100301.1046";
}

Karınca görevin çok basit:

<target name="version" depends="init" description="Create Version.java">
    <echo file="src/${package.dir}/Version.java" message="package ${package.name};${line.separator}" />
    <echo file="src/${package.dir}/Version.java" append="true" message="public final class Version {${line.separator}" />
    <echo file="src/${package.dir}/Version.java"
          append="true"
          message=" public static String VERSION="${buildtime}";${line.separator}" />
    <echo file="src/${package.dir}/Version.java" append="true" message="}${line.separator}" />
    <echo message="BUILD ${buildtime}" />
</target>

Bir şey Maven benzer, üretmek, kaynakları, ya da başka basit yöntemi kullanarak yapmak mümkün mü?

CEVAP
18 Mart 2010, PERŞEMBE


Bu, bu tür bir sorunu çözmek için iyi bir yol olduğunu sanmıyorum.

Daha iyi bir şekilde Java programı tarafından okunacak properties dosyasında sürüm bilgileri koymak

Özellikleri dosyası aşağıdaki satırı içerir:

myapp.version=${project.version}

Daha sonra pom.xml dosya filtered Maven tarafından ifade :

<resources>
    <resource>
        <directory>the/directory/that/contains/your/properties/file</directory>
        <filtering>true</filtering>
    </resource>
</resources>

Maven uygulama inşa edecek, kendi değer ${...} tüm yerini alacak. Varsayılan, ${project.version} tanımlar pom.xml sürümü (<version> etiket değeri yani).

Sonra, Java kod sadece properties dosya yükle myApp.version özellik değerini almak gerekir.

Build Number plugin bir şey daha "" sadece mevcut sürümü örneğin, eğer mülkiyet inşa zaman koymak istiyorsanız (). karmaşık ayarlamak için kullanabilirsiniz

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • David Tedeyev

    David Tedeye

    20 AĞUSTOS 2011
  • Menglong Tav

    Menglong Tav

    18 Temmuz 2010
  • Vladimir Jenko

    Vladimir Jen

    1 Mart 2010