SuperMap iDesktop Cross 8C 擴展開發的環境配置 git
工程源碼:http://git.oschina.net/supermap/SuperMap-iDesktop-Crossshell
Linux版Release(X64)直接下載:http://download.supermap.com.cn/SuperMapGIS/SuperMap8C/800/iDesktop/Cross/%E7%B2%BE%E7%AE%80%E7%BB%BF%E8%89%B2%E5%8C%85/SuperMap_iDesktop_Cross_8C_bin_Linux64.tar.gz框架
Windows版Relase(X64)直接下載:http://download.supermap.com.cn/SuperMapGIS/SuperMap8C/800/iDesktop/Cross/SuperMap_iDesktop_Cross_8C_Win64.zip
eclipse
SuperMap iDesktop Cross 8C是基於Java的、開源的、多平臺桌面GIS軟件,但其內部的GIS內核Objects目前沒有開源,須要商業許可。對於開發者來講,能夠申請一個開 發就能夠使用了。SuperMap iDesktop Cross 8C目前能夠運行在Linux/Windows上,能夠支持飛騰、龍芯等國產CPU上面的麒麟操做系統。函數
支持經過OSGi標準進行擴展插件的開發(Eclipse的插件也是採用的OSGi標準)。工具
SuperMap iDesktop Cross 8C是一款遵循 GPL 協議的開源產品,該產品基於SuperMap iObjects Java 8C組件產品開發,只需配置組件產品的許可便可,請參照《SuperMap iObjects Java 8C tar 包使用指南》配置組件許可。 網站
將JAVA的路徑加入系統的環境變量中,若是已經配置好JDK運行環境變量可跳過此步。 ui
1. Windowsspa
a) 右鍵點擊計算機,選擇「屬性」,而後依次點擊,高級系統設置-高級-環境變量。 b) 在「系統變量」中新建JAVA_HOME變量,變量值設置爲JAVA所在目錄,例如:」C:\Program Files\Java\jdk1.7.0_67」。 c) 在系統變量中的Path添加 :%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;操作系統
2. Linux
a) 在終端中輸入下面的指令,打開 profile 文件;
sudo gedit /etc/profile
b) 在文件末尾加入:
export JAVA_HOME=「此處替換爲JAVA目錄」 export PATH=$JAVA_HOME/bin:$PATH
c) 重啓系統後設置生效。
Equinox 框架是 Eclipse 組織基於 OSGi Release 4 的一個實現框架,它實現了 OSGi 規範的核心框架和許多標準框架服務的實現。
訪問Eclipse官網(http://www.eclipse.org/downloads/ )下載指定的開發版本:Eclipse for RCP and RAP Developers。該版本已經內置了OSGi開發環境,您只須要在新建插件工程(Plug-in Project)的時候選擇OSGi Framework便可。
組件的環境變量能夠直接在系統環境變量中配置,也能夠在工程中配置,您可根據本身的需求進行選擇。
2.3.1 下載並配置SuperMap iObjects Java 8C組件
訪問 SuperMap 官方網站(http://www.supermap.com/cn/ ),進入技術資源中心產品下載頁面(http://support.supermap.com.cn/DownloadCenter /ProductPlatform.aspx ),下載目標平臺的 SuperMap iObjects Java 8C 組件產品。
2.3.2 在系統環境中配置組件環境變量
將組件的路徑添加到環境變量中,若是已配置好組件環境變量可跳過此步。
1. Windows
a) 在Path中加入組件的根目錄,例如:D:\Program Files\SuperMap\SuperMap iObiects Java 7C\Bin
2. Linux
a) 在終端中輸入sudo gedit /etc/profile,打開 profile 文件;
b) 在文件末尾加入 export LD_LIBRARY_PATH=「組件路徑」:$LD_LIBRARY_PATH
c) 重啓系統使設置生效
2.3.3 在工程中配置組件環境變量
導入工程以後,在iDesktop目錄下的iDesktop Frame Configuration.launch文件上右擊,選擇Run As中的Run Configurations。在彈出窗口左側選擇OSGi Framework中的iDesktop Frame Configuration,隨後在右側窗口中的Enviroment標籤頁中選擇「New…」 按鈕進行添加環境變量操做。
在工程中配置的方法:啓動iDesktop插件的調試配置項(Debug Configurations)或者運行配置項(Debug Configurations),切換到Environment標籤頁,新建一個Environment variable,在彈出窗口中設置環境變量。 若使用的是Windows操做系統,則「Name」處應填寫path;若爲Linux操做系統則填寫LD_LIBRARY_PATH(以下圖所示)。「Value」需填寫爲組件路徑,點擊OK 保存。
若是是第一次啓動,或在更換了組件包之後,須要將組件bin目錄中的全部.jar文件替換到/core/lib目錄下,以添加jar包依賴。
啓動eclipse以後依次選擇: File – Import – General – Exitsting Project into Workspace – Browse,彈出文件選擇窗口。找到工程所在文件夾後點擊Finish完成導入。
依次點擊File – New - Project,打開New Project窗口。選擇Plug-in Development目錄下的Plug-in Project,點擊Next輸入工程名稱, 其中OSGI framework 選擇Equinox ,點擊Next。Execution Environment設置爲JDK1.7,最後點擊Finish按鈕便可完成新建。
添加對Core和Controls兩個插件的依賴。 1. 在新建的工程上右鍵,在右鍵菜單上依次選擇 Bulid Path - Configure Bulid Path,在彈出窗口右方選擇Projects,而後點擊「Add…」按鈕,添加Core和Controls項目。而後選擇Libraries,移除 Plug-in Dependencies,最後點擊OK完成添加。 2. 打開工程META-INF目錄下的MANIFEST.MF文件,在Dependencies頁面中的Required Plug-ins頁面中點擊「Add…」按鈕添加Controls和Core包(注:在添加時須要先輸入纔會顯示出匹配的包)。
1. 在生成的Activator類的Start()方法中添加初始化插件的代碼:
Application.getActiveApplication().getPluginManager(). addPlugin(「SuperMap.Desktop.SampleCode」, bundleContext.getBundle()); 語句,將插件註冊到項目中。
addPlugin 參數說明:
SuperMap.Desktop.SampleCode」爲插件名稱;
bundleContext.getBundle()爲Bundle對象。
2. 而後建立功能類,繼承CtrlAction,其中的run() 方法爲執行時調用的函數,enable() 方法返回功能是否可用。
3. 新增配置文件,在項目目錄「\WorkEnvironment\Default」下新建配置文件,可參考工具包中的SampleCodeWorkEnvironment.xml文件進行添加。
在工程中配置的方法:啓動iDesktop插件的調試配置項(Debug Configurations)或者運行配置項(Debug Configurations),切換到Bundles標籤頁,找到新加的插件,設置StartLever爲5,而後點擊Run運行程序。