Geoserver服務器開發——Geoserver源碼部署問題及解決方案

  • Geoserver概述

GeoServer是一個基於java的軟件服務器,允許用戶查看和編輯地理空間數據。基於開放地理空間聯盟(OGC)開放標準,GeoServer在地圖創建和數據共享方面具有很大的靈活性。

  • Geoserver源碼下載

Geoserver作爲開源資源,在Geoserver官網可以下載到源碼,本人通過Geoserver官網提供了多種形式的下載形式,如zip、tar.gz以及通過GitHub下載。本人通過GitHub下載的最新的穩定版本:2.15.0。在項目部署上按照官方開發手冊進行,目前開發手冊提供的版本是2.13.2,再按照開發手冊提供的步驟進行中間會有很多的細節問題導致項目部署失敗,在接下來項目部署中會詳細說明,並給出相關的解決方案。

  • 項目部署環境準備

Oracle官網下載jdk,安裝Java jdk,本機部署1.8環境;

Maven官網下載Maven,本機部署爲3.6版本

Idean安裝,本機爲2017版本(試用)

  • maven部署項目倉庫

本機Idea項目都保存在了D:\ideaProject目錄下,將下載的Geoserver源碼拷貝到該路徑下,建議項目名稱仍未geoserver,在D:\ideaProject\geoserver\src目錄下打開命令窗,執行mvn install命令,下載相關依賴的jar包。執行成功的最終界面如下:

  • 構建項目

啓動idea,導入項目,在選擇目錄中選中D:\ideaProject\geoserver\src下的pom.xml文件,按照官方手冊的idea啓動項目進行相關不配置。最後啓動即可。在瀏覽器中輸入首頁網址http://localhost:8080/geoserver/web,出現如下頁面,即表示項目部署成功。

  • 問題及解決方法

首先吐槽一下現有網上的Geoserver的一些博客,完完全全是按照官方開發手冊進行部署,但是官方手冊有很多瑕疵,很多細節行的東西沒有涉及到,而一些博主在項目部署的相關博客中只說在執行mvn install命令下載依賴包時會出現錯誤,但都沒有給出問題的解決方式,不利於交流學習。先給出在下遇到的問題

(1)在執行mvn install命令下載依賴包時,一些博主爲了避過項目的測試,執行了mvn install -Dmaven.test.skip=true,完全沒有必要,在執行一些jar包下載的時候,在下載到gs-wms模塊相關的依賴包時,出現瞭如下錯誤:No goals have been specified for this build. You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: validate, initialize。解決方案很簡單,找到該模塊的pom文件,在build標籤下添加<defaultGoal>compile</defaultGoal>即可。在修改之後可以按照命令行提供的提示,修改錯誤執行的命令(汗,忘記了,所以看自己命令行提示吧),如果在下載後面的幾個模塊依賴的包時出現了該錯誤,也是按照這種方式解決。在下載執行這步操時出現了兩次這個錯誤,按照這種方式解決了。

(2)接下來在idea中配置相關環境時,進行了如下配置,但是在項目啓動時,提示某些資源找不到或者某些路徑不存在,。其實是因爲在配置的項目資源時,沒有配置相關的資源。本人下載了Geoserver的安裝包,進行安裝,在Geoserver的data路徑中存在默認的資源,將該geoserver\data_dir下的資源拷貝到下圖vm options配置的路徑下即可。

  • 總結

雖然在部署該源碼項目時出現了錯誤,在Geoserver一些項目部署博客中並沒有出現相關解決方案,自己也要嘗試分析出現問題的原因,耐心、細心很重要。我也要很感謝公司的一些架構老大哥幫解決很多的測試案例問題。以後將會持續分析Geoserver項目源碼,做出一些需求擴展。

 

本博客爲原創博客,擁有絕對版權轉載請標明源地址:https://blog.csdn.net/luojingweikai/article/details/88654177

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章