geoserver中文开发手册Word文件下载.docx

上传人:b****3 文档编号:17058689 上传时间:2022-11-28 格式:DOCX 页数:25 大小:579.72KB
下载 相关 举报
geoserver中文开发手册Word文件下载.docx_第1页
第1页 / 共25页
geoserver中文开发手册Word文件下载.docx_第2页
第2页 / 共25页
geoserver中文开发手册Word文件下载.docx_第3页
第3页 / 共25页
geoserver中文开发手册Word文件下载.docx_第4页
第4页 / 共25页
geoserver中文开发手册Word文件下载.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

geoserver中文开发手册Word文件下载.docx

《geoserver中文开发手册Word文件下载.docx》由会员分享,可在线阅读,更多相关《geoserver中文开发手册Word文件下载.docx(25页珍藏版)》请在冰豆网上搜索。

geoserver中文开发手册Word文件下载.docx

?

GeoServer源代码存放在:

使用以下方式取出开发版/trunk版本

使用以下方式取出稳定版/stable版本:

警告:

Geoserver库包含大量空间数据。

从上取出这些数据对于低带宽用户来说相对就很慢或者很昂贵,这种情况下,用户可以通过以下方式仅获取源代码:

通过以下步骤提交到代码库:

1.?

安装subversion配置文件,请看后面备注。

2.?

注册获取提交权限。

3.?

将库切换到”https”协议,例如:

branches/

spike/

tags/

trunk/

branches包含以前所有稳定的开发分支,1.6.x,1.7.x,etc…

spike包含实验版本和原型

tags包含以前所有释放版本

trunk为当前开发分支。

每个开发分支都有如下所示的结构:

doc/

src/

data/

l?

doc包含用户和开发人员向导的源文件

src包含Geoserver本身的Java源码

data包含多种GeoServer的数据目录

三.快速入门

本章介绍快速搭建、运行GeoServer开发环境具体步骤。

我们假定您已经安装好所有必须的工具(内容见第二章)。

本章的上的是为了尽快的让开发者搭建和运行GeoServer。

对于一些更加深入的介绍请见Maven指南和Eclipse指南。

在Eclipse里运行GeoServer

取出源代码由subversion库中取出源代码。

选取trunk作为最新开发源码,或者那些基本不可能经常更新的版本的稳定分支。

要么是:

svn?

co?

geoserver-trunk或者(稳定的1.7.x分支

geoserver-1.7.x在这页示例里面,我们假定你取出源码到一个名为geoserver的目录,不过,最好还是把名字取得更详细一点为好。

由Maven构建修改目录到源树的根,执行以下maven构建命令:

cd?

geoserver/srcmvn?

clean?

install成功构建后会产生类似于以下的输出:

[INFO]

[INFO]?

------------------------------------------------------------------------

Reactor?

Summary:

GeoServer?

.............................................?

SUCCESS?

[10.271s]

Maven?

Plugins?

...............................?

[0.865s]

Configuration?

Deployment?

PlugIn?

.......................?

[3.820s]

Archetypes?

............................?

[0.054s]

WFS?

Output?

Format?

Archetype?

.................?

[0.390s]

Core?

Platform?

Module?

..................................?

[5.270s]

Data?

...........................................?

[4.521s]

Open?

Web?

Service?

[2.730s]

Main?

[10.077s]

Coverage?

...........................?

[3.785s]

1.1.1?

.....................?

[5.254s]

Validation?

.....................................?

[1.131s]

Feature?

[6.695s]

[1.197s]

Map?

................................?

[8.519s]

Geoserver?

REST?

Support?

Code?

[3.366s]

GeoWebCache?

(GWC)?

..............................?

[0.255s]

Application?

[27.386s]

Community?

Space?

.......................................?

[0.312s]

Extensions?

[0.071s]

BUILD?

SUCCESSFUL

由Maven生成Eclipse工程文件生成Eclipse使用的.project文件和.classpath文件:

mvn?

eclipse:

eclipse导入模块进Eclipse1.

启动运行Eclipse集成开发环境

2.

打开Eclipse首选项Preferences

3.

依次点击进入:

Java,BuildPath,Classpath?

Variables,点击New

 

4.

创建类路径变量名称”M2_REPO”,并且设置它的值为本地Maven库的位置,点击OK。

5.

单击OK以应用新的Eclipse首选项。

6.

在包浏览Package?

Explorer右键并单击导入Import…

7.

选择

已有工程导入工作区?

Existing?

Projects?

into?

Workspace,单击下一步:

8.

进入geoserver/src目录

9.

确保所有模块都被选取,单击完成Finish

在Eclipse中运行GeoServer1.

Explorer中选择web-app模块(1.7.x或更早版本是web)

点击进入包(1.7.x或更早版本是)

在Start类上右键,单击Run?

as,?

Java?

Application

访问GeoServer首页✍

几秒后,就可通过访问到GeoServer

默认的用户admin的密码是geoserver

四.Maven指南

本章是使用Maven构建GeoServer的参考。

安装Maven见工具(第二章)

运行MavenMaven提供了从模块编译到生成测试覆盖报告的多种命令。

大部分maven命令可在源树的根运行,或者某个特模块。

在准备由源树的根运行maven命令时,请记住要将取出的根目录变换到src目录。

在由源树的根运行一个命令时,或者从包含其它模块的目录时,命令将会为所有模块运行。

当从单个模块运行命令时,它只为这个模块运行。

构建GeoServer最常用的命令是安装命令:

install虽然clean命令不是必须的,但我们还是推荐用上。

上面的命令做了以下的事:

编译源代码

运行单元测试

安装成果到本地Maven库

跳过测试通常在构建时跳过单元测试很有用处。

在构建命令中添加-DskipTests标志就可以只编译单元测试而不会运行测试。

-DskipTests?

install离线构建Maven操作会自动下载待构建模块中声明的依赖库。

当处理快照(SNAPSHOT)依赖时,这就有可能会有问题。

Maven每次执行一天内的首次构建时,会尝试更新它的快照依赖。

由于GeoServer依赖GeoTools库的快照版本,这时可能会有问题。

最终导致Maven下载大量GeoTools更新模块并且急剧增加构建时间。

而如果你只是本地构建geotools,这些就显得不必要了。

这时,可以使用“离线”方式运行Maven来改进:

-o?

install在离线模式中,Maven不会下载任何外部依赖,也不会更新任何快照依赖。

构建扩展默认情况下,扩展没有被包含在构建中。

它们得通过Profile来明确增加到构建中。

比如下面的示例就将restconfig扩展添加到构建中:

install?

-P?

restconfig可以同时添加多个扩展同时使用:

restconfig,oracle有个特殊的名为allExtensions的Profile可以添加所有扩展:

allExtensionsProfilesEclipseMaven的Eclipse插件用于为模块生成eclipse工程:

eclipse经过此操作后,这些模块就可以导入Eclipse工作区。

该插件有个很有用的功能就是可下载第三方依赖的相关源代码。

这是通过添加downloadSources标志来做的:

-DdownloadSources?

eclipse警告:

当你首次启用downloadSources标志时,构建过程需要很长时间,因为它要下载GeoServer所依赖的每个库的源代码。

构建Web模块当安装好web模块后,它会通过内建的特殊配置构建。

默认情况下它注是minimal配置。

尽管如此,它也可以通过设置configId和configDirectory标志来定制任意配置。

比如:

GeoServer上的release配置构建web模块。

configId是包含的配置目录名称,configDirectory是包含的配置目录的父级目录。

configDirectory可以像刚才的一样的绝对路径,也可以是针对web模块自身的相对路径:

-DconfigId=release?

-DconfigDirectory=../../../data上面的命令与之前有同样的效果,尽管是引用了相对于web模块的路径。

该路径,../../../data,在GeoServer取出(check?

out)的代码目录结构是标准结构的情况下可用。

使用Jetty运行web模块Maven的jetty插件可用于运行嵌入了jetty容器的基于web的模块:

web模块运行,如果从其它模块运行就会失败。

上面的命令将会使用自带的数据目录来运行GeoServer。

为了使用其它的数据目录可以启用GEOSERVER_DATA_DIR标志:

-DGEOSERVER_DATA_DIR=/path/to/datadir?

jetty:

run

五.Eclipse指南

本章是使用Eclipse开发GeoServer的参考。

导入模块

运行和调试

设置数据目录

更改Jetty默认端口

配置Jetty中JNDI资源

Eclipse首选项

代码格式化

代码模块

文本编辑器

编译器

导入模块参见Maven指南中的Eclipse部分。

运行和调试运行和调试web-app模块中类。

具体步骤见快速入门。

设置数据目录如果未设置,GeoServer默认会使用web-app模块里的minimal目录作为它的数据目录。

若要修改,执行以下步骤:

1.在Eclipse菜单中打开调试配置(Debug?

Configurations)

2.先把Start配置,选择Argument面板,并且填写-DGEOSERVER_DATA_DIR参数,设置数据目录为绝对路径。

更改Jetty默认端口如果未设置,Jetty默认会使用8080端口。

修改请按以下方式:

1.

打开上节所说的Start配置中的Argument面板。

填写-Djetty.port参数,设置它到期望的端口

配置Jetty的JNDI资源JNDI资源如数据资源可以通过提供系统属性中名为的Jetty服务器配置文件来配置,这个可以在Start配置中的Argument面板上通过VM?

argument参数指定。

配置文件路径是相对于web-app模块根路径的,该模块是启动配置运行的地方。

例如:

Jetty服务器配置文件就配置了一个JNDI数据源:

jdbc/demo,它是一个Oracle数据库的连接池。

jdbc/demo?

claudius?

s3cr3t?

20?

10?

0?

10000?

300000?

true?

100?

SELECT?

SYSDATE?

FROM?

DUAL?

Jetty没有在GeoServer的WEB-INF/web.xml指定reference-ref,因此没必要修改该文件。

web-app模块和数据目录没有特定于Jetty的相关信息,因此JNDI资源可以被测试在Jetty下,以便于后面在Tomcat下的开发。

也可以看看GeoServer用户手册中Tomcat中建立JNDI连接池章节。

Eclipse首选项代码格式化1.

下载文件:

转到首选项中Java,Code?

Style,Formatter,点击Import…

选择步骤1中下载的formatter.xml文件。

点击Apply

代码模板1.

转到首选项Java,Code?

Style,?

Formatter,点击Important…

文本编辑器1.

转到General,Editors,Text?

Editors

选中Insert?

for?

tabs

选中Show?

print?

margin,将Print?

margin?

column设置为100

line?

numbers

whitespace?

characters(可选)

显示空白字符可帮助我们发现无意中提交不必要的空格。

编译器1.

转到Java,?

Compiler,?

Building

扩展开Output?

folder,并将.svn/加到Filtered?

resources列表中。

六.编程指南OWS服务

本节介绍GeoServer中OWS服务(原文为RESTful服务,可能为笔误)如何工作。

OWS服务概览TBA

实现一个简单的OWS服务本节将通过以下场景来介绍如何给GeoServer创建一个简单的GeoServer?

OWS服务。

该服务需要提供一个能广告叫做“sayHello”的单一操作的功能(capabilities)文档。

该sayHello操作的结果是一个简单的字符串:

“Hello?

World”。

内容:

实现一个简单的OWS服务

建立

创建插件

试一试

建立创建插件的第一步是为它建立一个maven工程。

该工程我们称为“hello”。

在本地文件系统中任意地方创建一个名为hello的新目录。

给hello目录添加名为pom.xml文件。

1.<

xml?

version="

1.0"

encoding="

ISO-8859-1"

>

2.?

<

!

--?

set?

parent?

pom?

to?

community?

-->

3.?

parent>

4.?

groupId>

org.geoserver<

/groupId>

5.?

artifactId>

community<

/artifactId>

6.?

/parent>

7.?

8.?

hello<

9.?

packaging>

jar<

/packaging>

10.?

version>

1.0<

/version>

11.?

name>

Hello?

World?

Module<

/name>

12.?

dependencies>

13.?

dependency>

14.?

15.?

main<

16.?

/dependency>

17.?

/dependencies>

18.?

repositories>

19.?

repository>

20.?

id>

opengeo<

/id>

21.?

22.?

/repository>

23.?

/repositories>

24.<

/project>

复制代码

在hello目录下创建Java源文件目录。

hello/

+?

pom.xml

src/

main/

java/创建插件插件是一系列由spring?

beans实现的扩展。

实例中扩展兴趣点是一个HelloWorld的POJO。

创建一个名为HelloWorld的类:

1.public?

class?

HelloWorld?

{?

public?

HelloWorld()?

//?

Do?

nothing?

4.}?

void?

sayHello(HttpServletRequest?

request,?

HttpServletResponse?

response)

throws?

ServletException,?

IOException?

response.getOutputStream().write(?

"

World"

.getBytes()?

);

}

该服务相对比较简单。

它提供了一个一个名为sayHello的方法,带有HttpServletRequest,HttpServletResponse参数。

该函数的参数列表会由自动发现。

创建applicationContext.xml文件将上面的类申明为一个bean。

UTF-8"

2.<

beans>

Spring?

will?

reference?

the?

instance?

of?

by?

id?

name?

helloService"

bean?

id="

class="

HelloWorld"

/bean>

used?

service?

in?

URL?

constructor-arg?

index="

0"

value="

hello"

/>

our?

actual?

POJO?

defined?

previou

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 实习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1