ODL编译问题记录

ODL编译问题记录

背景:在自己的win10系统上编译ODL的release-lithium-sr2版本遇到的问题。

  1. 先从github上下载代码。

代码链接:odlparent、controller、yangtools、openflowplugin、

2.java已经安装OK,maven也安装好,相应教程请百度。开始编译,这些代码有编译顺序问题,这是因为在代码的pom文件中有相应的依赖关系。
在cmd 下用“mvn clean install ”

编译odlparent
编译yangtools
编译openflowJava
编译openflowplugin
编译controller

3.在编译yangtools时,会出现错误。是xxx\yangtools-release-lithium-sr2\common\checkstyle-logging这个工程编译失败,可以先跳过单元测试进行规避,命令行“maven clean install -Dmaven.test.skip=true”。具体的解决办法是我这里要说的主要内容。


出现原因:首先,我下的版本是lithium版本稳定版,下的代码肯定是ok的,但现在出现问题,可能和环境或者某个插件有问题。从打印信息去网上搜索,没有找到有用的信息。

解决办法:后来我在win7的环境上编译这个版本成功。将对应的仓库里的打包放到win10里对应的仓库目录下,重新单独编译此工程ok。

详细步骤:

 1. 在win7下,找到仓库repository目录,基本在C:\Users\“用户名”\\.m2 目录下,可以把原来的repository
 文件夹重命名,再新建一个空文件夹取名repository。此时仓库repository里是空的。

 2.找到win7的代码目录,先把odlparent工程下的 odlparent单独编译一下(注:yangtools依赖此)。编译成功
 之后,再去编译xxx\yangtools-release-lithium-sr2\common\checkstyle-logging,此时应该会成功。

 3.在去仓库repository目录中看,会发现原来的空文件夹有了很多文件,接下里我们将其打包,放到win10下,
 同样找到仓库repository目录,将打包的内容解压复制到此,再去编译xxx\yangtools-release-lithium-sr2
 \common\checkstyle-logging,就会发现成功了···

ODL编译问题记录_第1张图片
注:我这边把我在win7下的打包放在这边。
win7生成的仓库,将内容解压放到win10仓库里ok


在解决这个问题之后,继续下面的编译仍然有问题

编译openflowJava
编译openflowplugin
编译controller

通过跳过单元测试编译,仍然会有一个解决不了的问题,是关于生成javadoc时对一个字符编码无法处理导致的问题,此问题需要修改代码,下个博客讲述。

你可能感兴趣的:(技术积累)