OpenDayLight学习及开发初级教程

controller功能介绍

Mininet 连接上 controller 后,会在首页形成拓扑图,需要注意是拓扑图开始只会显示交换机不会显示主机,这是由链路发现协议(LLDP)来决定的,当主机发起流量时,相关主机才会在拓扑图中显示。

Maven学习记录

看user guide真实一脸懵逼,决定先学maven和osgi,感觉马上就要奔向JAVA了orz
内心非常的痛
link 入手参考了这个博客,链接来源于link

mvn archetype:generate

autogenerate,报错
default-cli) on project standalone-pom: Execution default-cli of goal org.apache.maven.plugins:maven-archetype-plugin:2.2:generate failed: Plugin org.apache.maven.plugins:maven-archetype-plugin:2.2 or one of its dependencies could not be resolved: Failed to collect dependencies for org.apache.maven.plugins:maven-archetype-plugin:jar:2.2 (): Failed to read artifact descriptor for org.codehaus.plexus:plexus-utils:jar:1.5.8: Could not transfer artifact org.codehaus.plexus:plexus:pom:2.0.2 from/to central (http://repo.maven.apache.org/maven2): Read timed out -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
首先尝试用root权限
OpenDayLight学习及开发初级教程
尝试成功
OpenDayLight学习及开发初级教程

mvn compile 

OpenDayLight学习及开发初级教程
注意我的环境是maven2
要在mvnlearn下执行mvn test
OpenDayLight学习及开发初级教程
只要下载停止了,重来一遍就可以啦

四 理解Project Object Model

每个maven项目都包含一个pom.xml文件,文件中包含了与项目相关的所有元信息。如:项目配置文件、缺陷追踪系统、项目组织信息、Licenses、项目的路径、依赖关系等等。
项目坐标:groupID,artifactID,version是POM中必须包含的最小基本域信息
POM包含四个主要的部分

  1. 基本属性()、依赖管理。层级结构、模块和项目级别属性
  2. 构建设置:包含项目构建的细节设置
  3. 项目元数据:包含项目规范的细节,如:名字、组织机构。开发者、URL、启动时间等等
  4. 环境信息:版本控制信息、问题追踪管理、持续集成。邮件列表。仓储等等。

五 Maven的生命周期

有三个相互独立的生命周期,分别是default、clean、site
Default lifecycle:负责处理项目的编译、测试、部署,有超过20个阶段,常用的有如下:

validate:验证整个项目的信息是否可用或正确

compile:编译源代码

test:在测试套件里运行单元测试

package:为编译的代码打包

integration-test:在集成测试环境中处理package

verify:验证package是否合法

install:本地仓储中安装package

deploy:在远程仓储中安装最终的package

以上阶段都是按先后顺序执行,如果直接执行deploy,maven会先从validate开始执行,直到deploy

Clean lifecycle:处理项目的清空工作,包含以下阶段:

pre-clean:清理之前的一些预处理。

clean:清除通过之前构建生成的所有文件

post-clean:清理之后的一些处理(类似异常代码块中的finally)

Site lifecycle:项目站点文档的生成工作

pre-site:站点生成前的准备工作

site:生成文档

post-site:处理站点生成完之后的一些工作,及为部署做准备

site-deploy:给指定的web服务器部署站点文档

这些在pom.xml里都有相关内容
源码插件也看到了,但是不知道是干啥用的。

————————————————————————————————————————
一切的愚蠢都源于我向搞个VMbox,结果把共享粘贴板也整没了,重新装了个虚拟机。换源、update、装gedit,feature:install odl-restconf odl-l2switch-switch odl-mdsal-apidocs odl-dlux-all 熟练的令自己心疼

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jre

link按照这个教程安装Google-Chrome失败,告辞
爱了,以后不Google用百度我是小狗

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg –i google-chrome-stable_current_amd64.deb

直接sudo google-chrome --no-sandbox成功!
3.2 方法二:将 crx 的文件扩展名更改为 zip,然后拖拽安装

  1. 把下载好的xxx.crx 的扩展名改为 xxx.zip
    buxing
    问题来了,我为什么要跟着这个瞎折腾呢,我现在就应该老老实实地学一下maven和osgi
上一篇:2019 SDN第四次上机实验


下一篇:SDN实验5:OpenFlow 协议分析和 OpenDaylight 安装