Kavanoza istediğiniz adı vermek için finalName özelliğini belirtebilir ve "bağımlılıklara sahip jar" sonekini önlemek için appendAssemblyId öğesinin false olması gerektiğini belirtebilirsiniz .
Aşağıdaki yapılandırmada "test.jar" adlı bir kavanoz çıkacak
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-4</version>
<executions>
<execution>
<id>jar-with-dependencies</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<finalName>test</finalName>
<appendAssemblyId>false</appendAssemblyId>
</configuration>
</execution>
</executions>
</plugin>
Güncelleme: yorumlarınıza dayanarak, dahili tanımlayıcıyı kullanmak işe yaramaz. Bunun montaj eklentisinin son sürümlerinde bir hata olduğuna inanıyorum - sınıflandırıcılar için desteği kaldırdılar, ancak yerleşik bir tanımlayıcı kullanırsanız kimlik düzeltildi, bu yüzden büyük bir daft adı ile sonuçlanıyorsunuz.
Geçici bir çözüm olarak, bağımlılıkları olan jar tanımlayıcısı tarafından kullanılan derleme tanımlayıcısını kopyalayabilir ve kimliği değiştirebilirsiniz.
Bu örnek bir isim olması gerekir eğer öyleyse, finalName kısmına ekleniyor montaj id sonuçlanacaktır bölge full.jar , siz finalName belirtebilirsiniz bölge gibi montaj id dolu . Bu, region-full.jar adlı hedefe giden bir dosyayla sonuçlanır, ancak yine de Maven deposuna , sınıflandırıcı olarak tam kullanılan ekli bir yapı olarak yükleneceğini unutmayın . Bu kimlik diğer toplantınız için olandan farklı olduğu sürece herhangi bir çarpışma olmamalıdır.
Pom konfigürasyonu şöyle görünecektir.
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-4</version>
<executions>
<execution>
<id>jar-with-dependencies</id>
<phase>prepare-package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/main/assembly/jar-assembly.xml</descriptor>
</descriptors>
<finalName>region</finalName>
</configuration>
</execution>
</executions>
</plugin>
ve src / main / assembly içindeki jar-assembly.xml şöyle:
<assembly>
<id>full</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<unpack>true</unpack>
<scope>runtime</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.outputDirectory}</directory>
</fileSet>
</fileSets>
</assembly>