你好,我正在尝试创建一个自定义的描述符引用在我的父pom,它包装所有的依赖与源代码。我很好地固定了assembly.xml,但是当我将它添加到我的基本POM组装中时:组装失败了,如下所示:
[INFO] [assembly:assembly]
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error reading assemblies: No assembly descriptors found.
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: Error reading assemblies: No assembly descriptors found.但是组装:single似乎工作正常。我也尝试过将带有依赖项的jar ref添加到POM中,但我不确定这是否可行。
下面是我的基本pom中的内容:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-3</version>
<dependencies>
<dependency>
<groupId>mycompany.jar.assembly</groupId>
<artifactId>jar-with-dependencies-and-sources-test</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>assembly.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>有没有人知道当我从命令行调用mvn assembly:assembly时,让谁来工作?
提前谢谢。
发布于 2009-06-09 07:43:59
我不确定,但我有点怀疑。您将assembly:single定义为包阶段的一部分,并在执行元素中标识描述符。这可能意味着当您运行assembly:assembly时,插件不知道在哪里查找描述符。尝试将<configuration>元素复制到<executions>元素之外。
我的其中一个pom看起来像这样,我一直使用assembly:assembly:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.1</version>
<configuration>
<finalName>myJar</finalName>
<descriptors>
<descriptor>src/main/config/descriptor.xml</descriptor>
</descriptors>
<archive>
<manifest>
<mainClass>org.foo.Bar</mainClass>
</manifest>
</archive>
</configuration>
</plugin> 注src/main/config不是Maven标准路径,但是我还没有定义任何特殊的处理方法。
发布于 2009-06-09 02:54:29
你的assembly.xml放在哪里?Maven的工作目录是模块的目录(包含pom.xml的目录)。如果您的assembly.xml在与此pom.xml相同的目录中为no,则应指定路径
https://stackoverflow.com/questions/967779
复制相似问题