读取程序集时出错:未找到 ID 为 <xml path> 的描述符
Error reading assemblies: Descriptor with ID <xml path> not found
我一直在尝试将我的项目从 Java 8 迁移到 Java 11。到目前为止,我还更新了我的 Spring 引导项目并且能够找到出现的问题的解决方案。虽然对于这个,我在解决它时遇到了一些困难。 我的 Maven 版本是 3.6.1。
最初我的maven assembly插件的值是这样的:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptor>src/main/assembly/boot.xml</descriptor>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
虽然它会抛出一个错误:
Execution make-assembly of goal
org.apache.maven.plugins:maven-assembly-plugin:3.1.1:single failed:
parameter 'descriptor' has been removed from the plugin, please verify
documentation. -> [Help 1]
根据 maven assembly documentation,描述符 的使用总是不正确的。所以我将其更新为:
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptorRefs>
<descriptorRef>src/main/assembly/boot.xml</descriptorRef>
</descriptorRefs>
</configuration>
虽然还是不行。它会抛出这样的错误:
Error reading assemblies: Descriptor with ID
'src/main/assembly/boot.xml' not found -> [Help 1]
即使 boot.xml 存在。
关于如何解决这个问题还有其他建议吗?提前致谢!
好吧,我刚刚回到我之前的配置并添加了描述符标签。现在看起来像这样:
<descriptors>
<descriptor>src/main/assembly/boot.xml</descriptor>
</descriptors>
成功了!
我在使用 3.3 时遇到了同样的问题。标签 descriptor
不能单独使用。标签 descriptorRefs
如果用于 ID。如果您使用文件,则需要在 plugin
标签内的 configuration
标签内的 descriptors
标签内使用 descriptor
标签。
这是我的实际工作配置。
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<descriptors>
<descriptor>assembly.xml</descriptor>
</descriptors>
<finalName>sofia-web-server-${project.version}</finalName>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
我一直在尝试将我的项目从 Java 8 迁移到 Java 11。到目前为止,我还更新了我的 Spring 引导项目并且能够找到出现的问题的解决方案。虽然对于这个,我在解决它时遇到了一些困难。 我的 Maven 版本是 3.6.1。
最初我的maven assembly插件的值是这样的:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptor>src/main/assembly/boot.xml</descriptor>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
虽然它会抛出一个错误:
Execution make-assembly of goal org.apache.maven.plugins:maven-assembly-plugin:3.1.1:single failed: parameter 'descriptor' has been removed from the plugin, please verify documentation. -> [Help 1]
根据 maven assembly documentation,描述符 的使用总是不正确的。所以我将其更新为:
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptorRefs>
<descriptorRef>src/main/assembly/boot.xml</descriptorRef>
</descriptorRefs>
</configuration>
虽然还是不行。它会抛出这样的错误:
Error reading assemblies: Descriptor with ID 'src/main/assembly/boot.xml' not found -> [Help 1]
即使 boot.xml 存在。
关于如何解决这个问题还有其他建议吗?提前致谢!
好吧,我刚刚回到我之前的配置并添加了描述符标签。现在看起来像这样:
<descriptors>
<descriptor>src/main/assembly/boot.xml</descriptor>
</descriptors>
成功了!
我在使用 3.3 时遇到了同样的问题。标签 descriptor
不能单独使用。标签 descriptorRefs
如果用于 ID。如果您使用文件,则需要在 plugin
标签内的 configuration
标签内的 descriptors
标签内使用 descriptor
标签。
这是我的实际工作配置。
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<descriptors>
<descriptor>assembly.xml</descriptor>
</descriptors>
<finalName>sofia-web-server-${project.version}</finalName>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>