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

  • EvilControllers

    EvilControll

    20 Ocak 2008
  • itfigueres

    itfigueres

    12 EKİM 2013
  • Stevie

    Stevie

    2 Mayıs 2010