概述 BBB是由一个专业的团队在一起进行开发,并且组成一个广泛的社区在一起广泛的探讨开发的各个环节:设计,开发,测试,文档,定位,wikis编辑,还有就是最重要的,对第三方的支持!本文档探讨了如何在BBB服务器端构建BBB开发环境,一旦构建成功,你可以进行开发和扩展本地的服务器并且成为改善bbb社区的一分子! BBB有很多组件,核心的组件是:bbb-web,bbb-client,bbb-apps,bbb-voice和桌面共享,你并不需要明白所有的东西去开发或者扩展某个组件,例如:你对改善bbb客户端很感兴趣,你需要最低限度的明白bbb客户端以及一个整体上的架构认知! 为了帮助建立必须的开发环境,在bbb-conf里面已经预置了很多构建脚本!用脚本来完成大部分的工作的同时,随着你对BBB越来越熟悉,你需要看下bbb-conf的源码(在/usr/local/bin/bbb-conf),它们是如何工作的!你对BBB了解的越多,你就越容易的改变或者改善项目!
基本技能预备知识
1,对BBB大致框架有一个理解!
2,明白git是如何工作的!
一个可工作的服务器
这是显而易见的,在构建BBB开发环境之前,要确保BBB服务都可以跑起来!
需要可运行sudo命令
在构建BBB开发环境时,为了确认,需要可以输入以下命令执行:会返回当前目录下的文件列表!
Java代码
sudo ls
构建开发环境
在BBB服务器,你需要输入以下命令初始化必须的开发工具:
Java代码
bbb-conf --setup-dev tools
当你运行上面的脚本时,会让你输入密码获得root权限,然后会执行以下操作:
1,下载并安装groovy, grails, and gradle 2,下载并安装开源的flex sdk 3,初始化openJDK 4,初始化git 5,在~/.profile添加必要的环境变量 以上步骤完成后,需要重新加载~/.profile
Java代码
source ~/.profile
bbb配置脚本会在你的目录下创建一个开发目录:
Java代码
/home/firstuser/dev
签出源码
推荐使用Github,它会使你在自己的BBB源码工作,存储,更新变得简单以及有益项目的发展!
1,在github上建立账户 2,建立你的ssh keys 3,在你的github上构建一个bbb分支 4,将你的代码库拷贝到你的~/dev包里,复制完后,你会有以下目录
Java代码
/home/firstuser/dev/bigbluebutton
确保你在主分支工作!输入以下命令:
Java代码
cd ~/dev/bigbluebutton
git status
会显示:
Java代码
On branch master
nothing to commit (working directory clean)
主分支包含了大部分的新开发的东西,以及它可能会中断,如果想在0.8发布版工作,需要签出 v0.8 tag! 如果想修复有些问题,以及在v0.8上开发,需要输入以下命令:
Java代码
git checkout -b fixing-issue-100 v0.8
可以看到:
Java代码
Switched to a new branch 'fixing-issue-100'
输入:
Java代码
git status
显示:
Java代码
On branch fixing-issue-100
nothing to commit (working directory clean)
客户端开发
随着开发环境的签出以及克隆,我们就做好了开发的准备!
下面将带领你修改bbb客户端
构建客户端的开发环境,输入以下命令:
Java代码
bbb-conf --setup-dev client
这个命令修改BigBlueButton nginx设置,Http请求加载客户端,由下面提供:
Java代码
~/dev/bigbluebutton/bigbluebutton-client/bin
代替
Java代码
/var/www/bigbluebutton
构建客户端
现在让我们来构建客户端,注意现在我们不做任何改变,我们构建客户端来确保它可以工作!
Java代码
cd ~/dev/bigbluebutton/bigbluebutton-client
首先,让我们来构建本地环境(语言翻译包),如果你没有修改本地环境,你只需输入下面的命令一次: