: Ben tek bir zip dosyası içine olmayan java proje eserler (NET) paketlemek çalışıyorum. - Ben <packaging>pom</packaging>
olarak değiştirdim aksi oluşturulur yararsız kavanozun kurtulmak için [INFO] Cannot find lifecycle mapping for packaging: 'zip'. Component descriptor cannot be found in the component repository: org.apache.mav en.lifecycle.mapping.LifecycleMappingzip.
tamam kadar büyük: Ben <packaging>zip</packaging>
zip benim POM ambalaj değiştirirseniz, bu hata mesajı alıyorumMaven düz zip düzeneğini oluştururken orada Maven gurulara için
: Ben 2 sorunlar yaşıyorum hedef dir
Benim asıl sorun ben ZIP içine ambalaj ediyorum dosyalar birkaç dizinleri içinde yuvalanmış olmasıdır ama ZIP üst dizine bu koymak gerekir. İşte benim derleme dosyası var:
<assembly>
<id>bin</id>
<formats>
<format>zip</format>
</formats>
<fileSets>
<fileSet>
<directory>${basedir}/${project.artifactId}</directory>
<includes>
<include>**/Bin/Release/*.dll</include>
<include>**/Bin/Release/*.pdb</include>
</includes>
</fileSet>
</fileSets>
</assembly>
Bunu çalıştırmak
- Ben ZIP dosyası elde edersiniz ancak dosyalar C ile başlayan iç içe olacak: \ tam yolunu izler. Size fikir vermesi için - Proje aşağıdaki yapıyaProjectFoo\ProjectFoo\subproject1\Bin\Release\foo.dll
içine ikilileri var döker ve ben
ZIP\foo.dll
İşte
montaj eklentisi bulunuyor yapılandırmayı gerekir:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>assembly.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>zip</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
Belki sadece antrun kullanmak ve karınca zip yürütmek gerekiyor görev? Gördüğünüz gibi
! Teşekkür ederim Rich! – Bostone
Hoş Geldiniz –
Yine de bir sorun var. Zip hala "artifactId-Version" türünde bir üst dizini korur. Tüm dosyalarımı ziplediğimde, '/' içinde değil '/ Foo-1.0-SNAPSHOT /' içinde de bitmez. Yine de dosyalar hedef/dll-kademelendirme – Bostone