# GeoServer源码学习-环境搭建
# 介绍
GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。GeoServer是社区开源项目,可以直接通过社区网站下载,详细请查看本文档末的资源表。
兼容 WMS 和 WFS 特性;支持 PostgreSQL、 Shapefile 、 ArcSDE 、 Oracle 、 VPF (opens new window) 、 MySQL 、 MapInfo ;支持上百种投影;能够将网络地图输出为 jpeg 、 gif 、 png 、 SVG 、 KML 等格式;能够运行在任何基于 J2EE/Servlet 容器之上;嵌入 MapBuilder 支持 AJAX 的地图客户端OpenLayers;除此之外还包括许多其他的特性。
geoserver官网 (opens new window)
可以从官网上下载打包编译好的安装包,安装教程可以参考我之前的教程 (opens new window)
这里我们要学习源码,所以使用源码来启动服务
# 源码环境配置
源码我们可以去github上去下载代码仓库地址 (opens new window)

这里我选用2.19.6版本的源码

我的电脑为mac系统,windows电脑步骤基本差不多
# 安装maven
geoserver为maven项目,所以我们需要安装maven,安装教程可以参考我之前的教程 (opens new window)
使用mvn -v查看maven版本号

# 编译项目
解压项目后,文件夹如下所示:

cd geoserver
cd src
mvn clean install
# 如果执行过程中测试方法报错,就跳过测试
# 跳过测试单元进行构建命令
mvn -DskipTests clean install
2
3
4
5
6
参考命令
mvn -DskipTests clean install //跳过测试单元进行构建命令
mvn -DskipTests clean install -P allExtensions //将allExtensions扩展添加到构建种
mvn clean install -P restconfig //将restconfig扩展添加到构建中
//mvn clean install -P restconfig,oracle //可以同时启用多个扩展名
mvn -DskipTests clean install -P platform
mvn -DskipTests clean install -P web
2
3
4
5
6
开始编译

编译完成后如下所示

在下载依赖时很可能会报错,大概率是jar包下载不到,这个时候就需要删除maven目录下的文件夹,重新去download,或者指定国内的仓库去下载。
然后重新执行命令,知道build success。
# 启动项目
cd web/app
mvn jetty:run
2

访问:http://localhost:8080/geoserver/web/?1;页面效果如下

至此项目已经可以使用了
# 使用开发工具
我使用的是idea开发工具,接下来介绍如何在idea中运行geoserver项目
# 打开项目
打开项目如下图所示:

# 配置启动

选择Application

配置Application效果如下

配置Java Compiler

选择compiler-》Eclipse

启动成功后如下所示

页面查看
