使用ArcGIS-JAVA-sdk,做一個arcgis的java小demo
阿新 • • 發佈:2018-12-31
在ArcGIS的官網上,你能找到arcgis-runtime-sdk-java-100.0.0,和arcgis-runtime-sdk-java-guide-100.0.0,前者是建立專案時所需要引入的一些庫,後者是使用指南。在指南中你會發現兩種方法做demo,如下圖
指南中其中有兩個做demo的示例過程,第一個是用這個Gradle外掛來做,第二個是下載的sdk來做。
前者我做了,失敗了。是讓你下載Eclipse的gradle外掛,安裝後,就可以建立一個gradle專案,在建立專案後,按步驟替換程式碼就出錯了,估計是我的Eclipse版本或者安裝的gradle版本問題。安裝這個外掛,第一可以在market裡搜尋安裝,第二可以用software安裝,用一個網上搜到的連結。讀者可以自行百度。
現在說說第二種方法的步驟。
第6,7步,我覺得是用來,當你的滑鼠移到了某個類上,它就會顯示這個類的註釋。
第8步應該沒什麼用。
第9步,就是複製兩個SDK裡面的資料夾,到你的專案的最高目錄。
重點來了,第十步,讓你安裝一個EFXclipse,這個外掛要求你的Eclipse必須是版本是mars或者以上,不然安裝的時候會報錯,說找不到一個東西。這個地方用market安裝就行,搜尋這個外掛,只有它一個,你肯定不會選錯。
之後的步驟,就是不停地加程式碼進去,然後執行就可以了。
最後附上程式碼部分,方便大家複製。
package demoApp; import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.layout.BorderPane; import javafx.stage.Stage; public class MyMapApp extends Application{ @Override public void start(Stage stage) throws Exception { //create a border pane BorderPane borderPane = new BorderPane(); Scene scene = new Scene(borderPane); //size the stage and add a title stage.setTitle("My first map application"); stage.setWidth(600); stage.setHeight(350); stage.setScene(scene); stage.show(); } @Override public void stop() throws Exception { //release resources when the application closes } public static void main(String[] args) { Application.launch(args); } }
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.ArcGISMap;
import com.esri.arcgisruntime.mapping.view.MapView;
public class MyMapApp extends Application{
private ArcGISMap map;
private MapView mapView;
//create an ArcGISMap that defines the layers of data to view map = new ArcGISMap(); //make the basemap for streets map.setBasemap(Basemap.createNationalGeographic()); //create the MapView JavaFX control and assign its map mapView = new MapView(); mapView.setMap(map); //add the MapView borderPane.setCenter(mapView);
@Override public void stop() throws Exception {
//release resources when the application closes
mapView.dispose();
}
本人現在想吐槽,用arcgis的javaSDK做java專案,是不是太少見了,以至於我搜索半天都搜不到啥有用東西。