-
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