Geoserver源码编译(IDEA2020.1.1+maven3.8.2+JDK1.8)

一、编译环境准备

  记录下Geoserver源码编译部署整个流程,编译环境使用的IDEA2020.1.1+maven3.8.2+JDK1.8,之前使用JDK14在编译时会出现问题。geoserver源代码建议从github上直接搜索下载,第一次从官网上下载的源代码没有编译成功。下面简单介绍下相关环境配置。

1、IDEA2020.1.1

  IDEA2020.1.1安装教程可参考本站相关教程

2、maven3.8.2

  从Maven官网上下载。点击左侧列表中download,选择 apache-maven-3.8.2-bin.zip下载后解压(记录时版本已经到了3.8.3)
在这里插入图片描述
配置环境变量:

  • M2_HOME:E:\apache-maven-3.8.2-bin\apache-maven-3.8.2\bin(maven目录下的bin目录)
  • MAVEN_HOME:E:\apache-maven-3.8.2-bin\apache-maven-3.8.2(maven目录)
  • Path:%MAVEN_HOME%\bin

配置阿里云镜像:
  打开conf文件夹下的settings.xml文件,在mirrors部分添加如下代码:

<mirrors>
    <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>central</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror>
</mirrors>

建立本地仓库:
  在根目录下新建本地仓库目录文件夹maven-repo
在这里插入图片描述
  打开conf文件夹下的settings.xml文件,添加如下代码:
在这里插入图片描述

<localRepository>E:\apache-maven-3.8.2-bin\apache-maven-3.8.2\maven-repo</localRepository>

  配置完成后,在IDEA中创建maven项目后会自动在maven仓库下拉取jar包。

3、JDK1.8

  JDK1.8安装可参考本站相关教程

二、源代码编译及项目启动

1、项目构建

  • 进入geoserver源代码文件夹,进入.\geoserver-2.14.0\src目录下,输入cmd进入命令行。
    在这里插入图片描述
  • 在命令行下使用maven命令进行项目构建,下载相关依赖文件,注意此处使用跳过测试功能,否则会报错。
mvn -DskipTests install

在这里插入图片描述

  • 等待一段时间后出现BUILD SUCCESS说明项目构建成功。
    在这里插入图片描述
  • 编译时可能会出现FileSystemResourceStore.java文件异常报错,找到该文件对应路径.\src\platform\src\main\java\org\geoserver\platform\resource可以用NotePad直接打开,将第240行报错的代码段super.finalize();注释后重新编译。

2、项目配置

  • 使用IDEA打开geoserver源码,点击File->New->Project from Existing Sources
    在这里插入图片描述
  • 选择src目录下的pom.xml配置文件进行项目导入
    在这里插入图片描述
  • 项目导入完成后点击Setting进行项目配置,将编译器更改为Eclipse
    在这里插入图片描述
  • maven配置,分别设置maven所在路径,maven的setting.xml配置文件路径,maven的本地仓库路径
    在这里插入图片描述
  • 最后点击右侧maven,再点击一次刷新,否则有可能会报错
    在这里插入图片描述

3、项目启动

  • 点击启动项配置
    在这里插入图片描述
  • 启动项配置,Main class配置为org.geoserver.web.Start,VM options配置用于指定geoserver数据目录,添加-DGEOSERVER_DATA_DIR=F:\geoserver-2.14.0\geoserver-2.14.0\data,工作路径Working directory设置为F:\geoserver-2.14.0\geoserver-2.14.0\src\web\app,启动项模块为gs-web-app,JRE为安装的JRE路径。
    在这里插入图片描述
  • 运行项目,打开web模块中的Start类,点击运行
    在这里插入图片描述
  • 运行可能出现Command line is too long错误
    在这里插入图片描述
  • 点开项目文件夹里的.idea
    在这里插入图片描述
  • 在标签下添加此标签component name="PropertiesComponent"内加入如下标签
<property name="dynamic.classpath" value="true" />

在这里插入图片描述

  • 出现如下图所示,说明运行成功
    在这里插入图片描述
  • 在浏览器中输入http://localhost:8080/geoserver/web/就可以实现应用访问
    在这里插入图片描述
  • 访问后若出现页面404报错,在官网下载geoserver的安装包进行解压
    在这里插入图片描述
  • 解压后的文件夹中有data_dir文件夹,将其拷入源码的F:\geoserver-2.14.0\geoserver-2.14.0\data路径下
    在这里插入图片描述
  • 启动项更改VM option配置为-DGEOSERVER_DATA_DIR=F:\geoserver-2.14.0\geoserver-2.14.0\data\data_dir在这里插入图片描述
  • 至此完成geoserver源码的部署
  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值