ArcEngine Java开发(一)开发环境搭建

一.软件准备

1.windows11系统

2.ArcGIS for Desktop 10.2.2安装包

3.32位的JDK8(本人使用jdk8u262-b10版本)

4.IntelliJ IDEA 2023.2

二.软件安装

略,需保证ArcGIS授权成功,ArcMap能够打开

三.项目搭建

1.idea新建项目,选择Maven项目,JDK选择32位的jdk8u262-b10

2.添加环境变量,将AGSDESKTOPJAVA加入到系统环境变量,路径为安装ArcGIS Desktop10.2的目录 **\ArcGIS\Desktop10.2,然后在Path系统变量中添加%AGSDESKTOPJAVA%\bin(类似Java环境变量的添加)

3.在pom文件中引入ArcObject依赖,注意与ArcGIS版本对应

点击查看代码
<dependency>
     <groupId>com.esri.sdk.ao</groupId>
     <artifactId>arcobjects</artifactId>
     <version>10.2</version>
</dependency>

4.注册使用ArcEngine

在Main函数中添加如下代码,实现Engine的注册

点击查看代码
public static void main(String[] args) {
        try {
            EngineInitializer.initializeEngine();
            AoInitialize ao =  new AoInitialize();
            if(ao.isProductCodeAvailable(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeEngine) == esriLicenseStatus.esriLicenseAvailable)
                ao.initialize(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeEngine);
            else if(ao.isProductCodeAvailable(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeBasic) == esriLicenseStatus.esriLicenseAvailable)
                ao.initialize(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeBasic);
            else if(ao.isProductCodeAvailable(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeStandard) == esriLicenseStatus.esriLicenseAvailable)
                ao.initialize(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeStandard);
            else if(ao.isProductCodeAvailable(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeAdvanced) == esriLicenseStatus.esriLicenseAvailable)
                ao.initialize(com.esri.arcgis.system.esriLicenseProductCode.esriLicenseProductCodeAdvanced);
            else {
                throw new RuntimeException("Could not initialize an Engine, Basic, Standard, or Advanced License. Exiting application.");
            }
            ao.checkOutExtension(com.esri.arcgis.system.esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        System.out.println("Hello ArcEngine!");
    }

5.测试运行

posted @   geomzy  阅读(240)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示