使用IntelliJ IDEA 快速上手GeoServer ,基于GeoServer2.20.x版本
下载GeoServer源代码
从git repository克隆源代码
git clone git://github.com/geoserver/geoserver.git geoserver
列出可用的分支
git branch 2.20.x 2.19.x * main
选择main分支来开发最新功能
git checkout main
或者也可以选择一个很少修改的稳定分支来开发
git checkout 2.20.x
在本例中,我们将假设源代码位于名为geoserver的目录中,但建议使用更具描述性的名称。
导入 modules into IntelliJ IDEA
- 启动IntelliJ IDE
- 选择 File -> New -> Project from Existing Sources…
建议选择JDK 1.8编译
从IntelliJ IDEA启动GeoServer
- 在工程视图下选择web-app模块
- 进入org.geoserver.web 包下
- 右键选择Start类,然后单击 Run 'Start.main()'
- 如果是第一次运行,geoserver将会启动失败。找到Run菜单,单击Edit Configurations.…
- 选择Start 配置,在Working Directory 目录后添加 web/app
- 在你打开Edit Configurations 对话框时,可以微调你的启动环境(包括设置GEOSERVER_DATA_DIR)设置完成之后,单击 OK
- 如果出现 诸如 “cannot find symbol class ASTAxisId”之类的错误,这是因为在编译的时候没有包含一些自动生成的代码。使用 wcs1_1 作为工作目录,运行
mvn clean install
- 如果出现 类似java.lang.NoSuchMethodError,很有可能是因为 Error Prone工具不支持Java 8导致的。默认情况下,此工具处于关闭状态,但有时在导入到IntelliJ后会打开。有两种方法可以解决这个问题
- 在Maven tool 窗口,取消errorprone 配置选项,然后点击Reimport All Maven Projects 或是 Reload All Maven Projects
- 如果您想使用errorprone,尤其是执行QA检查,请安装Error Prone Compiler 插件,重新启动IDE,并将Javac with error-prone 设置为项目的默认编译器。请注意这会降低编译速度。
- 在Maven tool 窗口,取消errorprone 配置选项,然后点击Reimport All Maven Projects 或是 Reload All Maven Projects
- 现在可以启动GeoServer了
注意:如果已经有运行的服务使用了8080端口,记得把端口修改一下
带Extensions运行GeoServer
以上是在未启动任何extensions扩展的情况下运行Geoserver。在你 需要使用extensions情况下,web app模块会声明一些配置文件,这些配置文件将在运行Start时启用特定的扩展。要启用extensions,打开Maven Projects 窗口(View > Tool windows -> Maven Projects
) 选择你需要启用的配置文件
在src/web/app/pom.xml中 可以找到 支持profiles 的完整列表
前端访问GeoServer
- 启动成功之后,默认可以通过 http://localhost:8080/geoserver 访问
- 默认账号admin,密码geoserver
在Windows上用IntelliJ IDEA 运行GeoServer
- 将bash添加到Windows环境路径并重新启动Intellij。
- 如果出现诸如“cannot find symbol AbstractUserGroupServiceTest”之类的错误,请在 security module 中 rebuild securit-tests工程。在 security-tests project 上单击鼠标右键,然后单击“ Rebuild”。
参考:https://docs.geoserver.org/stable/en/developer/quickstart/intellij.html