Hyperic 开发环境的建立
webmaster 在 2014-12-17 15:39 提交
开源软件 Hyperic 应用管理工具的开发采用了Git, mvn, ant, java, groovy, postgresql, tomcat, mq等多种技术,虽然大部分定制不需要从源代码开始,但是其代码质量的确是高,其架构和架构是很值得学习的,
- 首先需要安装git。这里就不细表了。我感觉 git是有史以来最强大的协同版本管理工具,天才之作,没有你做不到的,只有你想不到的。
- 然后是到github.com上开个账号,这个也不细说了,对github不熟悉的用户,需要好好研究一下这个网站。
- 从 https://github.com/hyperic/hq 下载源代码,或者使用 git clone https://github.com/hyperic/hq
- 准备好 JDK 7, maven 2.2.1, ant 1.7.1
- 设置环境变量
JAVA_HOME=/path/to/your/jdk ANT_HOME=/path/to/ant-1.7.x TOMCAT_HOME=/path/to/tomcat-6.0.26 M2_HOME=/path/to/apache-maven-2.2.1
MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=512m"
ANT_OPTS="-Xmx768M -XX:MaxPermSize=128m"
- 重要目录介绍
dist build的最后发布成果 hq-api HQ API 的代码 hq-bootstrap 启动/停止HQ 服务器的代码和脚本 hq-common Agent和Server 共用代码,不包括PDK hq-installer 安装HQ的代码,脚本和数据 hq-integration-tests HQ agent 和 server 的集成测试 hq-lather Agent与Server通信的API hq-server HQ Server的核心代码 hq-agentHQ Agent代码和资源文件 hq-web HQ 的web 代码 hq-rendit HQU的基础代码
- 开始漫长的首次构建,根据网络状态,网络一定要给力,能翻墙最好翻墙,有可能需要多次,数个小时。
mvn 常用命令
最后生成所有安装包。
mvn package
最后不生成所有安装包,只生成war文件。这是由于最后的打包太费时间。
mvn –Pno-dist package
最后生成release包,很全面
mvn -Prelease package
最后的成果位置
hq-web/target/ROOT.war 最关键的war包 dist/hyperic-hq-installer/modules/ 各个平台的hyperic server和agent程序 dist/hyperic-hq-agent/modules/ 各个平台的hyperic agent代理程序