SORU
7 Ocak 2010, PERŞEMBE


Bina bir Maven 2 kavanoz ile çalıştırılabilir

Maven mantra için oldukça yeni değilim, ama Maven komut satırı çalıştırılabilir bir jar oluşturmak için çalışıyorum. Benim bağımlılıkları kurdum, ama ben mvn install çalıştırın ve kavanoz çalıştırmak için, iki şey. İlk önce, ana sınıfı düzeltilebilir vardır. Bu düzelttim, ben hataları sınıfları bulunamadığını belirten olsun.

Maven kavanozun içine bağımlılık benim kütüphaneleri ambalaj değil, tek başına bir uygulama olarak çalıştırmak için jar kuramıyorum. Bunu nasıl düzeltirim?

CEVAP
7 Ocak 2010, PERŞEMBE


Bunu yapmanın en kolay yolu bir derleme maven-assembly-plugin kullanma ve jar-with-dependencies önceden tanımlanmış tanımlayıcı oluşturmak olacaktır. Ayrıca bu uber kavanoz için ana sınıfı ile açık bir giriş oluşturmak gerekir. Parçacık aşağıda derleme eklentisi bunu yapmak için yapılandırmak için nasıl gösterir:

<build>
  <plugins>
    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <configuration>
        <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
          <manifest>
            <mainClass>fully.qualified.MainClass</mainClass>
          </manifest>
        </archive>
      </configuration>
    </plugin>
  </plugins>
</build>

Daha sonra Meclis, sadece çalıştırmak oluşturmak için:

mvn assembly:assembly

Eğer sadece inşa bağlama paketi aşaması için assembly:single mojo senin bir parçası olarak derleme oluşturmak istiyorsanız:

<build>
  <plugins>
    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <configuration>
        <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
          <manifest>
            <mainClass>fully.qualified.MainClass</mainClass>
          </manifest>
        </archive>
      </configuration>
      <executions>
        <execution>
          <phase>package</phase>
          <goals>
            <goal>single</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

Ve sadece çalıştırın:

mvn package

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • dirkgently1

    dirkgently1

    13 NİSAN 2006
  • edwin maldonado

    edwin maldon

    28 Mart 2009
  • Videogamerz | Call of Duty

    Videogamerz

    5 NİSAN 2012