如何将DLUX添加到新的OpenDayLight应用程序?

问题描述 投票:0回答:2

DLUX从上游版本中删除,因此我必须编译DLUX并添加回我的应用程序。

首先,我需要下载并编译DLUX(odl-dlux-core,odl-dlux apps- *):

git clone -b stable/oxygen https://github.com/opendaylight/dlux.git
mvn clean install

然后创建新的ODL应用程序:

mvn archetype:generate -DarchetypeGroupId=org.opendaylight.archetypes -DarchetypeArtifactId=opendaylight-startup-archetype -DarchetypeCatalog=remote -DarchetypeVersion=1.1.0-SNAPSHOT
mvn clean install
./karaf/target/assembly/bin/karaf

接下来,如何将dlux-core和所有dluxapps功能添加到存储库并将其安装到我的新应用程序中?

// The default repo location is `./karaf/target/assembly/system`,
// what I need to do to run the following commands?
feature:repo-add mvn:org.opendaylight.dlux/odl-dlux-core/0.7.4-SNAPSHOT/xml/features mvn:org.opendaylight.dlux/odl-dluxapps-<app_name>/<app_version>/xml/features
feature:install odl-dlux-core odl-dluxapps-<app_name>
sdn opendaylight
2个回答
1
投票

不幸的是,它并不像将现有功能添加到新的karaf发行版那么简单。正如@vorburger所说,您基本上需要对旧的DLUX源代码执行一些维护任务,至少要将其任何OpenDaylight依赖项更新为与原型相同的版本(我假设它来自master并且基于氖)。一旦碰到版本,您可能需要将DLUX代码更新为新的API(如果是这种情况)。

如果DLUX对您很重要,您可能需要投入一些精力来恢复它。你可能会发现Freenode IRC上的#opendaylight频道是寻找帮助的好资源。


1
投票

DLUX(UI)应用程序不再受支持,因此包含在最近的ODL发行版中,因为没有更多的活动维护者。

如果您正在使用DLUX并对它感兴趣,那么如果有人想要认真帮助维护DLUX,我们(ODL社区)会很兴奋。这就是开源的工作原理。

[在下面回答你的评论,这不是关于DLUX特定的,但更常见的是通过编辑此答案而不是评论,因为它太长了;也许最好开一个新的更具体的问题,如果还不清楚的话;而不是进一步扩展这个。]

我不确定您是否想学习(a)如何为现有的ODL Karaf添加新功能,或者(b)“修补”现有功能?

如果它是(a)一般,那么我认为这是OpenDaylight Oxygen Deploy app built from opendaylight-startup-archetype的副本...这有帮助吗?

如果是(b)那么你只需要做你的补丁(并且理想情况下,与“上游”社区一起参与邮件列表,并将其贡献给https://git.opendaylight.org?),然后在本地“mvn clean install”,然后从根据(a)的另一个项目依赖于该功能 - 它将在您当地的Maven仓库中找到它,并使用它而不是原始版本来构建您自己的Karaf发行版。 HTH?

© www.soinside.com 2019 - 2024. All rights reserved.