最近因为工作需要开始研究opendaylight,首先需要的是编译项目。

因为项目代码都是在git.opendaylight.org上的,所以需要先安装git工具。

另因为opendaylight项目都是用pom.xml组织的,所以需要安装maven(版本最好在3.0以上),java(1.7.0_45以上)。

这里是关于openflowjava的编译,windows或者linux环境都可以。

openflowjava项目比较小,相对更加容易编译成功。

1. 下载odl-parent

odl-parent是所有opendaylight项目的父项目,编译openflowjava时可以不用下载odl-parent,但是openflowplugin和controller等,必须有odl-parent存在。

在opendaylight目录下(openflowjava同级),使用git下载odl-parent

git clone https://git.opendaylight.org/gerrit/p/odlparent.git

下载完成后,复制odlparent根目录下的settings.xml文件到C:\Users\Administrator\.m2(linux下是/home/user/.m2)目录下。

若是使用的自定义maven仓库,那么修改maven\bin目录下的m2.conf文件,修改

set maven.home default C:\Users\Administrator\.m2为

set maven.home default E:\workspace\MavenWorkspace

并复制settings.xml到E:\workspace\MavenWorkspace下即可。

2. 下载openflowjava

使用git下载,

git clone https://git.opendaylight.org/gerrit/p/openflowjava.git

下载完成后,进入目录并切换项目版本到release/helium-sr3,

git checkout release/helium-sr3

这里sr3或者sr2版本都能编译通过,master版本不稳定,所以一般不编译默认的master版本。

编译项目

mvn clean install

这里一次通过。

有时可能会因为网络原因下载jar包失败,导致项目编译失败,重新编译即可,或者等些时间网络好些的时候重新编译,或者直接从网上下载jar包放到maven仓库对应目录下。

在windows下可能会因为目录太长导致mvn clean时删除项目下maven生成的target文件夹失败,导致编译失败,使用360卫士等,强制删除对应的文件夹,再重新编译即可。

OpenDaylight之openflowjava的编译的更多相关文章

  1. Ubuntu系统下OpenDaylight源码编译安装

    操作系统:Linux x64 / Ubuntu 14.04 研究领域:软件定义网络SDN (Software-defined Networking) 开发组件:OpenDaylight 声明:转载请注 ...

  2. 基于OpenDaylight和Mininet的试验床平台搭建

    ##########################################平台架构######################################### 一.虚拟机安装和镜像加载 ...

  3. OpenDayLight——HelloWorld

    OpenDayLight——HelloWorld 既然学习OpenDayLight编程这个鬼,就得像学语言一样来一个HelloWorld来试试水,经过几天的折腾,总算成功输出HelloWorld了,这 ...

  4. Docker容器打包成镜像 - OpenDaylight官方 SDN Hub Tutorial VM 的docker镜像

    由于工作需要,在看OpenDaylight (一个SDN的开源控制器) 官方Tutorial有一个比较基础且介绍比较详细的文档(http://sdnhub.org/tutorials/opendayl ...

  5. OpenDaylight开发hello-world项目之功能实现

    OpenDaylight开发hello-world项目之开发环境搭建 OpenDaylight开发hello-world项目之开发工具安装 OpenDaylight开发hello-world项目之代码 ...

  6. OpenDaylight开发hello-world项目之代码框架搭建

    OpenDaylight开发hello-world项目之开发环境搭建 OpenDaylight开发hello-world项目之开发工具安装 OpenDaylight开发hello-world项目之代码 ...

  7. 在OpenDaylight controller上开发App

    安装环境:Ubuntu18.04 一.安装依赖 1. 安装JDK: sudo apt update sudo apt install openjdk-8-jdk-headless 选择默认的 JDK: ...

  8. TODO:macOS编译PHP7.1

    TODO:macOS编译PHP7.1 本文主要介绍在macOS上编译PHP7.1,有兴趣的朋友可以去尝试一下. 1.下载PHP7.1源码,建议到PHP官网下载纯净到源码包php-7.1.0.tar.g ...

  9. Centos6.5下编译安装mysql 5.6

    一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...

随机推荐

  1. C Primer

    如果主函数使用void main(),由于它不是当前标准强制的一个选项,因此在有些系统上不能工作,为了使代码变得简单,main函数中可以没有返回语句. 先声明变量是为了防止拼写错误导致定义一个新的变量

  2. webrtc学习(一): webrtc开始

    一. 编译webrtc 1. 预先准备 1)  vpn. 用于同步代码. 这里给一个大概的估计吧. windows端包含vs2013 win8sdk wdk chromium源码等等, 总共需要至少8 ...

  3. storm0.9.0.1安装

    storm 0.9.x的好处是引入了netty进行网络传输(需要配置),不用再依赖zeromq和jzmq了 1.下载安装zookeeper ... 2.下载安装storm依赖库 JDK1.6及以上 . ...

  4. jquery datatable[表格处理]

    最近在公司实习发现一个额功能强大的表格解决方案,了解了一下,先总结如下: 1.官网:http://www.datatables.net/ 2.需要特别注意:被dataTable处理的table对象,必 ...

  5. A Multipart Series on Grids in ASP.NET MVC

    A Multipart Series on Grids in ASP.NET MVC Displaying a grid of data is one of the most common tasks ...

  6. [C.Sharp] Color 颜色转换

    URL:http://www.cnblogs.com/taven/archive/2009/09/26/1574329.html 方法1: 引用命名空间:using System.Drawing; 1 ...

  7. nodejs的mysql模块学习(六)连接池的创建和使用

    介绍 在 软件工程 , 连接池 是一个 高速缓存 的 数据库连接 维持,使得连接可以当需要将来向数据库请求重复使用. [ 来源请求 ] 连接池用于提高数据库上执行命令的性能. 打开并保持每个用户的数据 ...

  8. Java基础知识强化之IO流笔记72:NIO之 NIO核心组件(NIO使用代码示例)

    1.Java NIO 由以下几个核心部分组成: Channels(通道) Buffers(缓冲区) Selectors(选择器) 虽然Java NIO 中除此之外还有很多类和组件,Channel,Bu ...

  9. 【Linux/Ubuntu学习 13】ubuntu上好用的pdf软件okular

    step 1: 安装 sudo apt-get install okular step 2: 注释 按 F6 快捷方式打开注释功能,你会发现太神奇了. step 3: 中文配置 如果安装完成后中文显示 ...

  10. 重构8-Replace Inheritance with Delegation(委托替换继承)

    继承的误用十分普遍.它只能用于逻辑环境,但却经常用于简化,这导致复杂的没有意义的继承层次.看下面的代码: public class Sanitation{ public String WashHand ...