我们正在使用karaf-maven-plugin
来验证具有多个模块的项目中的features.xml
。典型的功能定义如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<features name"commons-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.4.0">
<feature name="commons" version="${project.version}">
<feature prerequisite="true">wrap</feature>
<bundle>mvn:org.example/commons/${project.version}</bundle>
</feature>
</features>
问题是检查是在本地存储库中的bundle发生的,而不是正在构建的bundle。事后看来,没有办法使用新的捆绑包,因为我们遵循this example并将karaf:verify
目标附加到process-resources
生命周期阶段。
将karaf:verify
目标附加到install
生命周期阶段是有效的,但有没有办法让karaf-maven-plugin
在反应堆中查找mvn:
引用,以便它可以运行mvn verify
代替mvn install
?
将其限制在本地存储库也很有用,因为它可以从远程存储库下载依赖项(忽略--offline
Maven选项)并“正常工作”直到版本更改。