java - 从 opendaylight-startup-archetype 构建的 OpenDaylight Oxygen Deploy 应用程序

标签 java maven karaf opendaylight archetypes

OpenDaylight 氧气
Maven 3.3.9
Ubuntu 16.04
Karaf 4

~/.m2/settings.xml - cp -n ~/.m2/settings.xml{,.orig} ; wget -q -O - https://raw.githubusercontent.com/opendaylight/odlparent/master/settings.xml > ~/.m2/settings.xml

用于创建骨架的进程

mvn archetype:generate -DgroupId=org.opendaylight.controller -DartifactId=testing -Dcopyright="None"-DclassPrefix="\${artifactId.substring(0,1).toUpperCase()}\$ {artifactId.substring(1)}”-DarchetypeGroupId=org.opendaylight.archetypes -DarchetypeArtifactId=opendaylight-startup-archetype -DarchetypeVersion=1.1.0-SNAPSHOT -DinteractiveMode=false

mvn clean install -Dcheckstyle.skip

我正在尝试构建示例应用程序并将其部署在单独的 ODL 实例 (karaf 4) 上。我无法在任何地方找到有效的答案。

我尝试将 PROJECT/karaf/target/assembly/system/org/opendaylight/controller 的内容复制到另一个 ODL 实例上的等效文件夹。然后使用 feature:add-repo 添加功能。它能够检测到插件,但 feature:install odl-testing 无法安装。

如有任何帮助,我们将不胜感激。

最佳答案

当你说“feature:install odl-testing failed to install”时,你并没有显示你遇到了什么确切的失败,但仅供引用,大多数人实际上并没有使用你试图开始工作的过程。从技术上讲,这是可能的单独构建你的新包和 Karaf 特性,然后手动添加它以部署在一个单独的 ODL 实例上......但我知道的每个项目都发现让构建产生一个现成的 Karaf 发行版更容易。

您可能已经在 karaf/target/assembly 中看到了 ODL 原型(prototype)(documented here BTW;注意在刚刚发布的最新 Fluorine 版本中将 archetypeGroupId 更改为 org.opendaylight.archetypes)生成的发行版?

因此,您可以做的只是添加您可能希望将您的功能添加到自定义功能的依赖项中的“基本”功能。有了这个,您就可以获得随时可以运行的自定义分发,包括您的新代码和您想要包含的任何其他 ODL 功能。

关于java - 从 opendaylight-startup-archetype 构建的 OpenDaylight Oxygen Deploy 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52116360/

相关文章:

java - VideoView 占用了正确的空间,但视频未显示在完整区域上

Jenkins 中的 Maven 包装器

java - 如果 OSGi 包使用类加载器,我如何检测它的运行时库?

java - 仅在重新启动后 Karaf 中出现 ClassCastException

java - 我可以只使用HashMap吗?

jar 中没有配置文件的 Java jar 创建

java - 确定性是什么意思?

java - 在 Reactor 项目中的单个 Maven 构建中运行 Java 应用程序和 Web 应用程序

java - 从 Maven 调用 groovy 'main' 方法

java - Karaf : Recommended way to uninstall/install API's bundle, 以及如何避免重影捆绑解析