Maven 2 Maven发布期间对其他程序集的模块间依赖关系
我们有一个包含以下模块的多模块项目:Maven 2 Maven发布期间对其他程序集的模块间依赖关系,maven-2,maven-assembly-plugin,maven-release-plugin,Maven 2,Maven Assembly Plugin,Maven Release Plugin,我们有一个包含以下模块的多模块项目: 数据库 坚持 生意 应用 “Database”项目是一个jar项目,它使用“maven assembly plugin”创建一个额外的程序集。此附加程序集包含数据库架构 插件配置如下: <plugin> <!-- create a zip file that contains all the db migration scripts. --> <groupId>org.apache.maven.pl
- 数据库
- 坚持
- 生意
- 应用
<plugin>
<!-- create a zip file that contains all the db migration scripts. -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>attach-schema</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>db-schema-descriptor.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
org.apache.maven.plugins
maven汇编插件
2.2.1
附加模式
包裹
仅有一个的
db-schema-descriptor.xml
“应用程序”项目创建应用程序目录结构的压缩版本。因此,它引用架构程序集,以便将其提取并复制到应用程序目录结构中的适当位置。引用表示为普通maven依赖项:
<dependency>
<groupId>my.application</groupId>
<artifactId>persistence</artifactId>
<version>0.0.1-SNAPSHOT</version>
<classifier>db-schema</classifier>
</dependency>
我的申请书
坚持不懈
0.0.1-快照
数据库模式
至少有一个多模块项目聚合了4个子模块,以便在一个步骤中构建应用程序
在聚合项目上运行“mvn部署”效果良好。将提取并复制数据库架构程序集。但在生成“应用程序”项目的聚合项目上运行“mvn release:prepare”时失败,错误通知是maven无法找到版本为“0.0.1”的架构程序集。日志文件声明“持久性”项目已在“应用程序”项目之前生成,并且“数据库架构”程序集已生成
有人知道我做错了什么吗?请参阅以获取答案,使用命令行“mvn-dprepartiongoals=install release:prepare”解决了问题。使用该命令行,prepare-release:prepare-goals首先运行安装目标,该目标将在本地存储库中安装发布程序集。稍后,这些程序集可以在发布过程中被引用。与之相关的不是真正的“部署”目标问题。调用“mvn部署”可以正常工作。调用“mvn发布:准备”时出现问题