ODL框架项目搭建小试牛刀-demo篇
前言
最近开始使用odl框架,对于刚接触odl的我还是需要一点适应期,感觉odl的开源资料相较于spring少太多,在此记录下自己对学习心得
一、代码获取
github地址先给大家晒出来,有兴趣的可以去看看
odl学习文档,是官网提供的toaster\demo,有兴趣的可以看下
二、步骤分解
第一步,修改maven的settings.xml文件,odl的编译需要在setting文件中配置相应的远程库,该settings文件可以从odlparent项目中获取,替换setting文件,加入自己相应的本地仓库地址,你就可以开始了
第二步,创建项目,cmd到相应目录,然后输入以下命令,开始创建项目,如下所示。
输入命令行:
mvn archetype:generate -DarchetypeGroupId=org.opendaylight.controller -DarchetypeArtifactId=opendaylight-startup-archetype -DarchetypeRepository=https://nexus.opendaylight.org/content/repositories/opendaylight.release -DarchetypeCatalog=remote -DarchetypeVersion=1.0.1-Lithium-SR1 -DarchetypeCatalog=internal
F:\odlLearn>mvn archetype:generate -DarchetypeGroupId=org.opendaylight.controller -DarchetypeArtifactId=opendaylight-startup-archetype -DarchetypeRepository=https://nexus.opendaylight.org/content/repositories/opendaylight.release -DarchetypeCatalog=remote -DarchetypeVersion=1.0.1-Lithium-SR1 -DarchetypeCatalog=internal
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] >>> maven-archetype-plugin:3.1.2:generate (default-cli) > generate-sources @ standalone-pom >>>
[INFO]
[INFO] <<< maven-archetype-plugin:3.1.2:generate (default-cli) < generate-sources @ standalone-pom <<<
[INFO]
[INFO]
[INFO] --- maven-archetype-plugin:3.1.2:generate (default-cli) @ standalone-pom ---
[INFO] Generating project in Interactive mode
[WARNING] Archetype not found in any catalog. Falling back to central repository.
[WARNING] Add a repository with id 'archetype' in your settings.xml if archetype's repository is elsewhere.
Define value for property 'groupId': com.vincent.example
Define value for property 'artifactId': example
Define value for property 'version' 1.0-SNAPSHOT: :
Define value for property 'package' com.vincent.example: :
Define value for property 'classPrefix' Example: :
Define value for property 'copyright': Example
Confirm properties configuration:
groupId: com.vincent.example
artifactId: example
version: 1.0-SNAPSHOT
package: com.vincent.example
classPrefix: Example
copyright: ExampleY: : y
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Archetype: opendaylight-startup-archetype:1.0.1-Lithium-SR1
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: com.vincent.example
[INFO] Parameter: artifactId, Value: example
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: package, Value: com.vincent.example
[INFO] Parameter: packageInPathFormat, Value: com/vincent/example
[INFO] Parameter: classPrefix, Value: Example
[INFO] Parameter: package, Value: com.vincent.example
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: copyright, Value: Example
[INFO] Parameter: groupId, Value: com.vincent.example
[INFO] Parameter: artifactId, Value: example
[WARNING] Don't override file F:\odlLearn\example\pom.xml
[INFO] Project created from Archetype in dir: F:\odlLearn\example
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 38.894 s
[INFO] Finished at: 2019-08-31T10:06:09+08:00
[INFO] ------------------------------------------------------------------------F:\odlLearn>
扩充,关于DarchetypeVersion的版本,你可能并不想开发1.0.1-Lithium-SR1这个版本,那么有哪些版本可以使用呢?大家可以再这个网站去查阅一下,https://nexus.opendaylight.org/content/repositories/opendaylight.release/archetype-catalog.xml,选择自己所需要的版本进行创建项目
第三步,项目创建完成,此时你得到如下图所示的项目文件树
F:.
├─api
│ └─src
│ └─main
│ └─yang
├─artifacts
├─features
│ └─src
│ └─main
│ └─features
├─impl
│ └─src
│ ├─main
│ │ ├─config
│ │ ├─java
│ │ │ ├─com
│ │ │ │ └─vincent
│ │ │ │ └─example
│ │ │ │ └─impl
│ │ │ └─org
│ │ │ └─opendaylight
│ │ │ └─yang
│ │ │ └─gen
│ │ │ └─v1
│ │ │ └─urn
│ │ │ └─opendaylight
│ │ │ └─params
│ │ │ └─xml
│ │ │ └─ns
│ │ │ └─yang
│ │ │ └─example
│ │ │ └─impl
│ │ │ └─rev141210
│ │ └─yang
│ └─test
│ └─java
│ ├─com
│ │ └─vincent
│ │ └─example
│ │ └─impl
│ └─org
│ └─opendaylight
│ └─yang
│ └─gen
│ └─v1
│ └─urn
│ └─opendaylight
│ └─params
│ └─xml
│ └─ns
│ └─yang
│ └─example
│ └─impl
│ └─rev141210
└─karafF:\odlLearn\example>
第四步、cmd到example文件夹,编译项目mvn clean install -DskipTests,编译需要的时间有点久,你可以做点别的事情,静待大功告成
第五步、项目启动,karaf
win10 启动karaff闪退问题解决
修改karaf\sdotn-distribution\target\assembly\etc目录下的system.properties文件,末尾添加org.osgi.framework.os.name=Win32。win7中直接启动即可
启动完成之后,通过log:display | grep example命令行相关
三、特别鸣谢
特别鸣谢:
http://www.bubuko.com/infodetail-2229492.html
https://www.cnblogs.com/zjd1396/p/9993655.html
https://wiki.opendaylight.org/view/Controller_Core_Functionality_Tutorials:Tutorials:Starting_A_Project
ODL框架项目搭建小试牛刀-demo篇相关推荐
- springboot项目搭建0000-导航篇
前言:这篇帖子没有任何涉及技术的内容,如果你想找springboot相关的技术知识,可以不用往下看了. 这篇帖子仅仅是对我的springboot相关博客,开辟一个导航页,方便读者.技术大牛略过 主要参 ...
- linux编译框架的搭建,Linux精华篇—CentOS 7.4下源码编译构建LNMP架构
CentOS 7.4搭建LNMP 最新版本LNMP:Linux7.4.ngnix1.13.9.mysql5.7.20.php7.1.10 目录: 第一部分 准备工作 第二部分 安装nginx服务 第三 ...
- Node.js结合Express框架项目搭建
一.简述 本次项目是用node.js写后台接口,前端使用vue.js分离的方法实现一个在线点咖啡的项目.本节教程只是一个简单的入门,关于实际用法后期继续更新. 二.搭建应用 1. 通过应用生成器工具 ...
- express框架项目搭建
(第一次安装的步骤) 1.全局安装express框架 cnpm i express -g 2.安装模板express-generator cnpm i express-generator -g 3.检 ...
- SpringBoot+MyBatisPlus+Vue 前后端分离项目快速搭建【后端篇】【快速生成后端代码、封装结果集、增删改查、模糊查找】【毕设基础框架】
前后端分离项目快速搭建[后端篇] 数据库准备 后端搭建 1.快速创建个SpringBoot项目 2.引入依赖 3.编写代码快速生成代码 4.运行代码生成器生成代码 5.编写application.pr ...
- SpringBoot+MyBatisPlus+Vue 前后端分离项目快速搭建【前端篇】【快速生成后端代码、封装结果集、增删改查、模糊查找】【毕设基础框架】
前后端分离项目快速搭建[前端篇] 后端篇 前端篇 创建vue项目 安装所需工具 开始编码 1.在根目录下添加vue.config.js文件 2.编写main.js 3.编写App.vue 4.编写ax ...
- MVVM框架的搭建(二)——项目搭建
介绍完背景以及初衷之后,我们开始搭建MVVM的框架,这一部分我们进行简单的搭建,了解MVVM架构的基本结构. MVVM框架的搭建(一)--背景 MVVM框架的搭建(二)--项目搭建 MVVM框架的搭建 ...
- CLion之C++框架篇-安装工具,基础框架的搭建(一)
CLion之C++框架篇-安装工具,基础框架的搭建(一) 背景 日常学习C++,也就是看看书.在vim里写写代码.在日常项目开发中,也是边看书(一是系统性理解.二是找找有什么更好的代码编写方式)边写代 ...
- b2c项目基础架构分析(二)前端框架 以及补漏的第一篇名词解释
b2c项目基础架构分析(二)前端框架 以及补漏的第一篇名词解释 继续上篇,上篇里忘记了也很重要的前端部分,今天的网站基本上是以一个启示页,然后少量的整页切换,大量的浏览器后台调用web服务局部.动态更 ...
- java ssj_java中ssj框架的项目搭建流程
1.新建一个maven项目 2.在pom.xml中,配置所需的jar包及其版本号 4.1.7.RELEASE 4.3.11.Final org.springframework spring-core ...
最新文章
- 编写nios-shell时想到的问题-回车vs换行
- php prettyprinter,gdb运行时错误:prettyprinter已注册:libstdc++v6
- Java 9抢先体验:与JShell的动手实践– Java REPL
- scope参数错误或没有scope权限_SSM 单体框架 - 前端开发:用户和权限模块
- 将byte数组以html形式输出到页面,java 数组显示到html
- delegate和protocol
- python基础语法_字符串编码
- oracle unpivot 索引_oracle pivot 和 unpivot 函数的使用
- Java集合--LinkedList
- 大数据分析技术架构的通用模块
- matlab图片集成成视频
- deepin下安装QT
- java在线学习系统、基于javaweb的线上智能教育、ssm实现web版本学生在线学习考试、题库管理系统
- 关于小米手机用微信会重启的问题
- monitor.bat无法启动解决办法
- 问题:Permission denied: user=dr.who, access=WRITE, inode=“/“:hadoop:supergroup:drwxr-xr-x
- 9860计算机测量程序,卡西欧9860测量放样程序-绘星
- 论如何成为技术大牛,GitHub中国区前20名详解
- Concis组件库封装——Collapse折叠面板
- openwrt路由器打印机服务器设置_OpenWRT路由器——网络打印服务器