ArcGIS Engine 10.5下构建Java程序—轻松入门
雖然接觸Engine Java的時間比較長,也接觸過用戶的一些問題,但是一般都是直接從ArcObjects SDK for Java的示例工程中找一個,然后測試用戶代碼,并沒有自己動手搭建過Engine Java工程,尤其是帶控件的,今天正好有用戶問起,就動手搭建工程測試一下。現把詳細的流程寫下來,希望對剛剛開始進行Engine Java開發的用戶有所幫助。
一、 環境的準備
1,Engine Java 的環境配置:
安裝Java JDK,ArcObjects SDK 10.5的系統需求:支持Java JDK 8 Update 65以及之后的版本,注意必須是32位。
安裝Java開發所需要的IDE,我用的是Mars.2 Release (4.5.2) Eclipse。
安裝ArcObjects SDK for Java 10.5(當然之前需要先安裝好ArcGIS Engine 10.5),在ArcGIS Engine和ArcObjects SDK for Java的安裝過程中會自動向操作系統的環境變量中添加環境變量,通常我都沒有再手動設置過環境變量,運行示例程序也能成功,假如運行不成功,有可能需要進行環境變量的配置,參考技術文章:
2,安裝ArcGIS PlugIn
ArcGIS PlugIn位于C:\Program Files (x86)\ArcGIS\DeveloperKit10.5\java\tools\eclipse_plugin\arcgis_update_site\arcobjects (您機子上AO SDK的安裝路徑)文件夾。Eclipse里安裝plugin插件流程如下:
點擊Help->Install New Software:
彈出界面中選擇Local,然后選擇該文件夾:
接著會彈出下面界面(由于我本機已經裝好了,沒有這個界面,所以我找了個10.2的虛擬機截圖):
這里有一點需要注意:開始安裝完成時,會提示Esri ArcObjects Palette無法安裝,缺少相應的文件,這時需要把ve文件夾中的內容拷貝到Eclipse軟件路徑的Features文件夾下(比如D: \Java\eclipse-java-mars-2-win32\eclipse\features),然后再次安裝就可以成功了。
二、創建Engine Java模版工程
在File->New->Project,就會彈出下面界面:
如果進行Engine開發的話,可以直接選擇ArcObjects Project,如果進行Add-in擴展的話則選擇下面的模版。
下一步可以選擇是進行Map、Scene還是Globe顯示,此外還可以直接添加工具和mxd:
Next,彈出初始化許可界面,可以勾選要用的主許可和擴展許可:
點擊Finish,然后運行該BasicViewer.java即可彈出下面界面:
這樣一個模版工程就搭建好了,有沒有注意到,一句代碼都木有寫!!!但還是有用戶說,雖然Esri提供的模版既方便又快捷,但是我不想用怎么辦?比如我就想自己手動搭建一個這樣的界面,好吧,接著往下看。
三、創建自定義界面
如果想直接拖動MapBean、TOCBean、ToolbarBean等控件進行設計界面的話,還需要安裝WindowBuilder,以Mars.2 Release (4.5.2) Eclipse為例,我用的WB_v1.8.0_UpdateSite_for_Eclipse4.5.zip,可以點擊下載。
下載成功后,繼續用上面安裝ArcGIS PlugIn的方法安裝,點擊Archive,選擇本地的WB所在文件即可:
安裝完成后,新建一個JFrame,打開Design界面:
也可以選中Open With->WindowBuilder Editor,打開設計界面:
在Palette 處點擊會彈出一個上下文菜單,選擇Add category,新建一個名為ArcObjects的空category:
點擊剛剛新建的ArcObjects,選擇Import Jar:
打開arcobjects.jar(C:\Program Files (x86)\ArcGIS\Engine10.5\java\lib)所在路徑,會彈出所包含的控件,在可能用到的控件前打鉤即可:
點擊OK之后,返回Design界面,就可以看到ArcObjects的這些控件了,可以直接使用:
雙擊控件,然后在窗體中選擇相應的布局即可:
界面設計好后可以添加工具,選中ToolbarControl->Custom,添加Item:
界面設計好后回到代碼界面,可以進行許可的初始化,在代碼處點擊,選擇ArcGIS->Insert License Code:
彈出許可界面,選擇所需的許可:
點擊OK,會在代碼中添加下面初始化許可的函數:
void initializeArcGISLicenses() {try {com.esri.arcgis.system.AoInitialize ao = new com.esri.arcgis.system.AoInitialize();if (ao.isProductCodeAvailable(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeEngine) == com.esri.arcgis.system.esriLicenseStatus.esriLicenseAvailable)ao.initialize(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeEngine);} catch (Exception e) {e.printStackTrace();}}最后再在程序入口處添加EngineInitializer.initializeVisualBeans();即可運行成功:
文章的最后強調一點:如果沒有安裝ArcGIS PlugIn或者使用模版的話,需要在Project->Properties->Java Build Path,右側Libraries,添加arcobjects.jar和jre,如圖:
總結
以上是生活随笔為你收集整理的ArcGIS Engine 10.5下构建Java程序—轻松入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 万众瞩目--腾讯云数据库TDSQL第一届
- 下一篇: 荣耀30会更新鸿蒙系统吗,华为荣耀30肿