Maven OpenDaylight氮气:在哪里指定功能的存储库?

Maven OpenDaylight氮气:在哪里指定功能的存储库?,maven,apache-karaf,opendaylight,Maven,Apache Karaf,Opendaylight,在OpenDaylight中,我在哪里指定存储库路径(在Karaf 4.0上)?我正在这个平台上构建一个Java应用程序。我注意到features.xml是从POM生成的。我需要从本地Maven.m2/repository加载从另一个项目生成的一些功能。我看到一个带有pom.xml的features/features-X目录,在那里我可以添加特性依赖项,但是我应该在哪里指定要在其中查找特性的存储库 这可能更像是一个Maven问题,而不是一个OpenDaylight问题……只需将其作为featur

在OpenDaylight中,我在哪里指定存储库路径(在Karaf 4.0上)?我正在这个平台上构建一个Java应用程序。我注意到
features.xml
是从POM生成的。我需要从本地Maven
.m2/repository
加载从另一个项目生成的一些功能。我看到一个带有
pom.xml
features/features-X
目录,在那里我可以添加特性依赖项,但是我应该在哪里指定要在其中查找特性的存储库


这可能更像是一个Maven问题,而不是一个OpenDaylight问题……

只需将其作为features/features-X/pom.xml中的依赖项放入插件即可查看Maven路径并自动生成存储库。(回答我自己的问题,以便对其他人有用。)

只需将其作为依赖项放入features/features-X/pom.xml插件查看maven路径并自动生成存储库。(回答我自己的问题,以便对其他人有用。)

这在某种程度上是特定于OpenDaylight的(尽管很明显,在其他环境中可以使用Maven复制这种行为)。正如您所发现的,Karaf特性描述符现在是基于POM依赖项自动生成的。为此,必须满足以下要求:

  • 特征生成模块必须将
    org.opendaylight.odlparent:single feature parent
    作为其父级(必要时可传递)
  • POM必须指定
    功能
    作为其
    包装
    类型
  • 在POM中,应使用默认范围将功能依赖项声明为构建依赖项,
    type
    设置为
    xml
    classifier
    设置为
    features
    (复数)
如有必要,功能片段可以在相应模块中以
src/main/feature/feature.xml
(单数)的形式给出;这些将与生成的
feature.xml
(再次为单数)合并。结果作为
features.xml
(复数)文件安装在目标存储库中

值得注意的是,以这种方式生成的特性描述符使用它们所依赖的每个特性作为它们自己的存储库;如果需要多功能存储库,则应使用手动生成的功能描述符


这在中作了简要说明。

这在某种程度上是特定于OpenDaylight的(尽管很明显,可以在其他上下文中使用Maven复制这种行为)。正如您所发现的,Karaf特性描述符现在是基于POM依赖项自动生成的。为此,必须满足以下要求:

  • 特征生成模块必须将
    org.opendaylight.odlparent:single feature parent
    作为其父级(必要时可传递)
  • POM必须指定
    功能
    作为其
    包装
    类型
  • 在POM中,应使用默认范围将功能依赖项声明为构建依赖项,
    type
    设置为
    xml
    classifier
    设置为
    features
    (复数)
如有必要,功能片段可以在相应模块中以
src/main/feature/feature.xml
(单数)的形式给出;这些将与生成的
feature.xml
(再次为单数)合并。结果作为
features.xml
(复数)文件安装在目标存储库中

值得注意的是,以这种方式生成的特性描述符使用它们所依赖的每个特性作为它们自己的存储库;如果需要多功能存储库,则应使用手动生成的功能描述符

这在中作了简要说明