某软件项目开发手册.doc
- 文档编号:240740
- 上传时间:2023-04-28
- 格式:DOC
- 页数:52
- 大小:574KB
某软件项目开发手册.doc
《某软件项目开发手册.doc》由会员分享,可在线阅读,更多相关《某软件项目开发手册.doc(52页珍藏版)》请在冰点文库上搜索。
文件编号:
P01-01
分册号:
1/1
页码:
52
密级:
C
InforGuard项目
开发手册
中创软件商用中间件股份有限公司
2010年05月
请不要删除后面的分节符
变更记录
变更版本
日期
图表、表格、段落号
A/M/D
原因与修改情况描述
修订人
审核人
1.0
2010-1-1
ALL
A
创建文档
李铭
注:
A–增加M–修改D–删节
请不要删除后面的分节符
II
目录
目录
第1章概述 1
1.1.开发场景 1
1.2.基本概念 1
第2章搭建开发环境 2
2.1.准备开发工具 2
2.2.工具安装及环境配置 2
2.2.1.安装jdk及配置java环境 2
2.2.2.安装maven及配置仓库 3
2.2.3.Eclipse中安装m2eclipse插件 4
2.2.4.Eclipse中安装RAP开发环境 4
2.2.5.Eclipse中安装国际化编辑插件 5
2.2.6.Eclipse中导入编码样式 5
2.2.7.设置Eclipse的默认编码 5
第3章开发案例 7
3.1.开发前准备 7
3.2.组织结构 7
3.2.1.目录结构 7
3.2.2.源码组织 8
3.3.开发流程 8
3.3.1.建立Eclipse插件工程 8
3.3.2.添加依赖 9
3.3.3.添加导出包 10
3.3.4.开发声明式服务(DService) 11
第4章常见问题解答 23
第5章参考 24
附录一SETTING.XML 25
附录二常用动名词 33
附录三本地化资源文件的创建方法 34
附录四MANIFEST.MF 35
附录五POM.XML 36
附件六OSGI命令说明 39
附件七METADATA.XML 41
请不要删除后面的分节符
核高基6-1项目使用手册
47
附件七metadata.xml
第1章概述
该文档是为InforGuardUTMP开发人员开发新功能所编写的规范性文档。
1.1.开发场景
当UTMP添加新的功能时,开发人员可以根据该文档更快更有效的进行开发。
1.2.基本概念
wOSGi:
OSGi(JSR291)也叫Java语言的动态模块系统,它为模块化应用的开发定义了一个基础架构。
OSGi容器已有多家开源实现,比如Knoflerfish、Equinox和Apache的Felix。
更多信息可以访问:
http:
//www.osgi.org/Main/HomePage、
wEquinox:
Equinox是Eclipse中的项目之一,Equinox是作为OSGIR4RI而知名的,同时由于Equinox有EclipseIDE这么个成功案例,反应出了Equinox作为OSGI框架的优势。
更多信息可以访问:
http:
//www.eclipse.org/equinox/、http:
//www.riawork.org/。
wBundle:
OSGi服务框架定义的模块化单元,称之为一个Bundle。
一个Bundle由java的类和其他资源组成,可以为终端用户提供功能。
Bundle的描述信息存放在一个manifest文件中,这个文件包含在JAR文件中的META-INF目录下,命名为MANIFEST.MF。
通过Bundle的符号名称和版本号可以在框架中惟一的确定一个Bundle。
wEclipseRAP:
EclipseRAP项目的目的是让开发人员能够利用Eclipse开发模型来构建Rich,Ajax-enabledWeb应用程序。
主要运用著名的Eclipse平台扩展点插件机制和一个包含SWT/JFaceAPI的widget工具包。
RAP项目旨在使开发人员能够使用Eclipse开发模型构建富Internet应用程序。
RAP允许开发人员使用丰富的Java™库和EclipseAPI构建基于浏览器的Ajax应用程序。
它通过提供SWT、JFace和EclipseWorkbench的基于Web的实现来提供此项功能。
更多RAP信息可访问:
http:
//www.eclipse.org/rap/。
第2章搭建开发环境
2.1.准备开发工具
wJDK1.5或以上版本,下载地址:
ftp:
//192.168.51.11/Tools/Program/JDK/jdk-1_5_0_16-windows-i586-p.exe/
wMaven2.0.9或以上版本,下载地址:
ftp:
//192.168.51.11/Tools/Program/maven/apache-maven-2.2.1-bin.zip
wEclipse3.5或以上版本,下载地址:
ftp:
//192.168.51.11/Tools/Program/%B1%E0%BC%AD%C6%F7/Eclipse/eclipse-java-galileo-SR2-win32.zip
注:
192.168.51.11的用户名/密码:
user/123
2.2.工具安装及环境配置
2.2.1.安装jdk及配置java环境
1.安装
Windows操作系统上的JDK安装程序是一个exe可执行程序,直接安装即可,在安装过程中可以选择安装路径以及安装的组件等,如果没有特殊要求,选择默认设置即可。
程序默认的安装路径在C:
\ProgramFiles\Java目录下。
2.环境变量设置:
配置步骤为:
1)右击“我的电脑”,点击“属性”:
选择“高级”选项卡,点击“环境变量”。
2)在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(不分大小写)
JAVA_HOME指明JDK安装路径,假设JDK的版本为1.6.0_16,安装路径为默认路径,则该值应设为C:
\ProgramFiles\Java\jdk1.6.0_16,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行一体化管理平台,eclipse等都需要此变量);
PATH使得系统可以在任何路径下识别java命令,设为:
%JAVA_HOME%\bin;
CLASSPATH为java加载类(classorlib)路径,只有类在classpath中,java命令才能识别,设为:
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar(要加.表示当前路径),%JAVA_HOME%就是引用前面指定的JAVA_HOME。
3.验证安装成功:
1)打开“开始”>“运行”
cmd>java–version
屏幕输出java版本信息说明安装成功,否则说明配置错误,需要重新进行配置。
2.2.2.安装maven及配置仓库
1.安装
1)下载并解压至想要安装的目录
2)设置Maven系统环境变量,例如:
MAVEN_HOME=E:
\apache-maven
3)添加%MAVEN_HOME%\bin至系统环境变量PATH中。
4)确认Maven的安装:
cmd>mvn–version
屏幕输出maven版本说明安装成功。
2.配置本地Repository
本地Repository的默认值是${user.home}/.m2/repository/。
可以在userconfiguration(即在${MAVEN_HOME}/conf/setting.xml)中改变本地Repository的位置。
例如本地仓库的位置在硬盘的位置为:
E:
\Repository。
在setting.xml可以进行如下配置:
\Repository
注意:
本地Repository必须是绝对路径。
3.配置代理
可以在userconfiguration(即在${MAVEN_HOME}/conf/setting.xml)中配置代理,配置如下:
//58.20.54.58/content/groups/treleases
//58.20.54.58/content/groups/tsnapshots
注:
setting.xml配置文件见附件一
2.2.3.Eclipse中安装m2eclipse插件
在eclipse中选择Help>InstallNewSoftware...,在弹出的Install对话框的Workwith文本框中添加m2eclipse插件的安装地址http:
//m2eclipse.sonatype.org/sites/m2e,选择“MavenIntegrationforEclipse(Required)”进行安装。
安装完成之后需要在eclipse中自行指定在本机中maven的Repository位置。
打开window/proferences菜单,点击maven配置项的Installations,去掉默认的launchmaven,添加机器上的maven并选择使用,点击maven配置项的usersettings,选择${MAVEN_HOME}/conf/setting.xml文件,完成配置。
2.2.4.Eclipse中安装RAP开发环境
w打开Eclipse,选择Help>InstallNewSoftware...菜单。
w在弹出的Install对话框的Workwith文本框中输入RAP的安装地址,如1.3版本为:
http:
//download.eclipse.org/rt/rap/1.3/tooling。
w选择列表中出现的RichAjaxPlatform并点击下一步。
w在详细页面点击下一步。
w在许可证页面选择同意并点击完成按钮。
w安装完成后确认重启Eclipse。
wEclipse重启后会出现欢迎页面,选择RichAjaxPlatform(RAP)à选择InstallTargetPlatformà选择确定按钮。
2.2.5.Eclipse中安装国际化编辑插件
w打开Eclipse,选择Help>InstallNewSoftware...菜单。
w在弹出的Install对话框的Workwith文本框中输入Jinto的安装地址:
http:
//www.guh-software.de/eclipse/。
w选择列表中出现的OpenSourceTools并点击下一步。
w在详细页面点击下一步。
w在许可证页面选择同意并点击完成按钮。
w安装完成后确认重启Eclipse。
2.2.6.Eclipse中导入编码样式
w打开Eclipse,选择Window>Preferences>Java>CodeStyle>CodeTemplates菜单。
w点击界面右面的Import按钮,选择IDCcodetemplates.xm文件,点击Apply按钮。
w当新建Java接口/类时,需要选择Generatecomments,如下图:
2.2.7.设置Eclipse的默认编码
w打开Eclipse,选择Window>Preferences>General>Workspace>菜单。
w在Textfileencoding中选择Other,并且把编码改成UTF-8。
第3章开发案例
3.1.开发前准备
参照第2章搭建好开发环境。
3.2.组织结构
3.2.1.目录结构
目录
说明
Cloud-UI
界面原型的WEB工程
Cloud-Flex
Flex开发工程
————Cloud-web
存放展示层构件工程
——————user-management
存放用户管理工程
3.2.2.源码组织
本项目主要的包结构如下:
com.cvicse.inforguard.utmp.模块名.构件名.分组名
3.3.开发流程
3.3.1.建立Eclipse插件工程
启动Eclispe,从Eclispe的File菜单创建一个Eclipse插件工程,FileàNewàProjectàPlug-inDevelopmentàPlug-inProject,输入工程名cloud-userman-impl,选择合适的工程目录,点击next,进入Plug-inProject向导,配置完成后点击Finish,完成建立工作。
参考上图设置,点击Finish按钮完成工程创建。
注意:
(1)由于我们开发的是第一个版本,所以Version先写成0.0.1。
(2)需要把”Generateanactivator,aJavaclassthatcontrolstheplug-in`slifecycle”取消勾选状态。
(3)如果开发的是Web插件,需要把”Thisplug-inwillmakecontributionstotheUI”勾选上。
3.3.2.添加依赖
用Plug-inManifestEdit打开MANIFEST.MF文件,切换到Dependecies视图,如下图。
在RequiredPlug-ins中加入依赖的插件。
在ImportedPackages中加入依赖的包。
3.3.3.添加导出包
用Plug-inManifestEdit打开MANIFEST.MF文件,切换到Runtime视图,如下图:
在ExportedPackages中添加要导出的包。
3.3.4.开发声明式服务(DService)
在这里我们将开发一个简单的例子,这个例子包括以下部分:
w发布一个OSGi服务。
w引用一个OSGi服务。
w使用构件实例生命周期控制方法来激活和去活构件实例。
为了举例说明DService功能,我们将开发一个简单的程序来展现它。
这个例子包括3个Bundle,
其一是服务接口(HelloService),对应POJOproject
其二是服务实现,作为一个单独的构件位于单独的Bundle中,并且该构件提供OSGi服务(POJO-Impl),对应POJO-Implproject
其三是服务使用方,也是作为一个单独的构件位于单独的Bundle中,并且该构件需要使用HelloService接口的OSGi服务,对应POJOClientproject。
首先,创建一个hello-api的服务接口工程(创建过程见3.3.1.),添加一个接口类:
com.cvicse.inforguard.utmp.example.hello.IHello,代码如下:
/*
*
*InforGuardCopyright2010CVICSE,Co.ltd.
*Allrightsreserved.
*
*Package:
com.cvicse.inforguard.utmp.example.hello
*FileName:
IHello.java
*
*/
packagecom.cvicse.inforguard.utmp.example.hello;
/**
*
*描述:
*
* 服务接口
*
*创建日期2010-6-1
*
*@authorli_ming
*@version1.0
*
*/
publicinterfaceIHello{
/**
*打招呼
*@paramname姓名
*@return打招呼语句
*/
publicStringsayHello(Stringname);
}
使hello-api工程支持Maven,操作如下图:
点击“EnableDependencyManagerment”,弹出配置界面,填写如下:
填写完后,点击“Finish”,这时候pom.xml文件会报错,你需要把下面的代码加入pom.xml的
${pom.artifactId}
com.cvicse.inforguard.utmp.example.hello
pom.xml中各标签的详细说明见附录五。
双击MANIFEST.MF,在Runtime中把com.cvicse.inforguard.utmp.example.hello包暴露出来,详见3.3.3.。
接下来只需要在eclipse中右击工程或者pom文件,选择runasmaveninstall即完成工程的构建工作。
当maven报告[INFO]BUILDSUCCESSFUL则HelloService服务构件的jar包已经安装到maven的本地库中,同时生成一个副本位于工程根目录的target下。
第二步创建Hello接口的实现工程:
hello-impl,双击MANIFEST.MF,在Dependencies中添加hello-api插件的依赖,详见3.3.2.。
添加一个IHello接口的实现类:
com.cvicse.inforguard.utmp.example.hello.impl.HelloImpl,代码如下:
/*
*
*InforGuardCopyright2010CVICSE,Co.ltd.
*Allrightsreserved.
*
*Package:
com.cvicse.inforguard.utmp.example.hello.impl
*FileName:
HelloImpl.java
*
*/
packagecom.cvicse.inforguard.utmp.example.hello.impl;
importcom.cvicse.inforguard.utmp.example.hello.IHello;
/**
*
*描述:
*
* 服务的实现
*
*创建日期2010-6-1
*
*@authorli_ming
*@version1.0
*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 项目 开发 手册