Używam wtyczki maven-antrun do zrobienia mnóstwa pracy z Antem, co ostatecznie skutkuje plikiem zip. Chciałbym wdrożyć plik zip na nasz maven serwer (Artifactory). Część maven-antrun działa zgodnie z przeznaczeniem i pomyślnie tworzy plik zip; Jednak wdrożenie powiedzie się z następującym komunikatem o błędzie:Jak mogę wdrożyć plik zip utworzony za pomocą wtyczki maven-antrun?
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.6:deploy (default-deploy) on project projectname: The packaging for this project did not assign a file to the build artifact
Mój plik POM jest następująca:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.company.division</groupId>
<artifactId>projectname</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<parent>
<groupId>com.company.product</groupId>
<artifactId>parentproject</artifactId>
<version>1.0.0</version>
</parent>
<distributionManagement>
<snapshotRepository>
<id>artifactory</id>
<name>artifactory-snapshots</name>
<url>http://localartifactoryserver/artifactory/libs-snapshot-local</url>
<uniqueVersion>false</uniqueVersion>
</snapshotRepository>
</distributionManagement>
<dependencies>
<!-- Some dependencies... -->
</dependencies>
<build>
<plugins>
<!-- Compiler plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF8</encoding>
<optimize>true</optimize>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>compile</id>
<phase>compile</phase>
<configuration>
<target>
<!-- Do lots of other stuff with Ant. -->
<!-- Create a zip file. -->
<zip basedir="mydir" destfile="${WORKSPACE}/MyZip.zip" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.6</version>
<configuration>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
<packaging>zip</packaging>
<file>MyZip.zip</file>
<url>${project.distributionManagement.snapshotRepository.url}</url>
</configuration>
</plugin>
</plugins>
</build>
</project>
Gdy przywołuję ten (z POM dominującej) z mvn -U -pl projectname clean deploy
uzyskać wspomniany błąd podczas faza rozmieszczania. Czy ktoś wie, co robię źle lub jak mogę to naprawić?
Zakładając, że twój projekt to ' pom ', należy pamiętać, że przejściowe zależności takiego projektu nie zostaną rozwiązane (później przez inne projekty), jeśli rozmieścisz artefakt w ten sposób. –
carlspring
Co zostanie rozwiązane, to sam artefakt. – carlspring
Oszczędności na życie. Musiałem to zrobić w linii poleceń. Miło wiedzieć, jak to zrobić w pliku pom.xml. –