如何构建ArcGIS Runtime API for Java的运行环境
目录
- 在线构建
- 1.配置pom.xml
- 2 释放资源
- 离线构建
- 1 部署jar包
- 2 导入jar包
- 3 释放资源
- 运行测试
在线构建
一般情况下,优先使用在线构建方式。
1.配置pom.xml
您可以参照下列代码完成实现您的项目的pom.xml。当然这个前提是您的项目是一个maven工程。完成此步骤可以解决“程序包com.esri.arcgisruntime.geometry不存在”的报错。可以顺利下载arcgis-java依赖。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion><groupId>cn.wja</groupId>
<artifactId>gis-demo-online</artifactId>
<version>1.0-SNAPSHOT</version><name>gis-demo-online</name>
<url>https://blog.csdn.net/monarch91</url>
<properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><arcgis.version>100.12.0</arcgis.version>
</properties>
<repositories><repository><id>arcgis</id><url>https://esri.jfrog.io/artifactory/arcgis</url></repository>
</repositories>
<dependencies><dependency><groupId>com.esri.arcgisruntime</groupId><artifactId>arcgis-java</artifactId><version>${arcgis.version}</version></dependency><dependency><groupId>com.esri.arcgisruntime</groupId><artifactId>arcgis-java-jnilibs</artifactId><version>${arcgis.version}</version><type>zip</type></dependency><dependency><groupId>com.esri.arcgisruntime</groupId><artifactId>arcgis-java-resources</artifactId><version>${arcgis.version}</version><type>zip</type></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version><scope>test</scope></dependency>
</dependencies>
<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-dependency-plugin</artifactId><version>3.1.1</version><configuration><artifactItems><artifactItem><groupId>com.esri.arcgisruntime</groupId><artifactId>arcgis-java-jnilibs</artifactId><version>${arcgis.version}</version><type>zip</type><overWrite>true</overWrite><outputDirectory>${user.home}/.arcgis/${arcgis.version}</outputDirectory></artifactItem><artifactItem><groupId>com.esri.arcgisruntime</groupId><artifactId>arcgis-java-resources</artifactId><version>${arcgis.version}</version><type>zip</type><overWrite>true</overWrite><outputDirectory>${user.home}/.arcgis/${arcgis.version}</outputDirectory></artifactItem></artifactItems></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.0</version><configuration><release>11</release></configuration></plugin><plugin><groupId>org.codehaus.mojo</groupId><artifactId>exec-maven-plugin</artifactId><version>1.6.0</version><executions><execution><goals><goal>java</goal></goals></execution></executions><configuration><mainClass>com.example.app.App</mainClass></configuration></plugin><plugin><groupId>io.takari</groupId><artifactId>maven</artifactId><version>0.7.4</version></plugin></plugins>
</build>
</project>
如果您完成上述pom.xml配置后,还是有部分jar包无法正常下载。那就请参照下列配置修改下Maven的seting.xml。主要要注意mirrorOf不能是 “ * ” 。
<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><pluginGroups></pluginGroups><proxies></proxies><servers></servers><localRepository>G:\Repository</localRepository><mirrors><mirror><id>aliyun-public</id><mirrorOf>central</mirrorOf><name>aliyun public</name><url>https://maven.aliyun.com/repository/public</url></mirror></mirrors><profiles></profiles>
</settings>
2 释放资源
如下图所示,在项目根目录运行mvn dependency:unpack
以释放ArcGIS Runtime API for Java的资源到您的用户目录。
完成此步骤可以解决如下报错,也就是找不到运行环境的报错。
Caused by: java.lang.RuntimeException: Could not find runtime in any of:
- A directory specified by calling ArcGISRuntimeEnvironment.setInstallDirectory()
- The current directory F:\Code\Intimate\other\gis-demo
- A location specified by the environment variable ARCGISRUNTIMESDKJAVA_100_10_0
- Within the “.arcgis” directory in the user’s home path C:\Users\admin.arcgis
离线构建
如果示例的pom文件中的仓库的链接无法访问,您就需要下载相关资源离线构建。
资源下载链接为:https://download.csdn.net/download/monarch91/61136824
下载后是一个zip压缩文件,解压后会得到arcgis-java-100.12.0.jar,arcgis-java-jnilibs-100.12.0.zip,arcgis-java-resources-100.12.0.zip三个文件。
上述资源就是maven从公开在线仓库中下载到本地后,我从本地仓库复制出来并打包的。整个过程未曾接收到任何关于收费的提示,但我也未查询到 ArcGIS Runtime API for Java 的供应商Esri 有表明这款软件是可以免费使用的开源软件。因此如需在实际项目开发中使用ArcGIS Runtime API for Java,请先向Esri公司咨询授权的相关事宜,避免不必要的纠纷和损失。现在也有国产替代产品GeoScne Runtime SDK for Java,可以联系易智瑞公司获得相关资源和授权。如果您希望使用开源软件完成类似功能,建议查询一下geotools。
1 部署jar包
您需要在arcgis-java-100.12.0.jar所在的路径下运行以下命令,将jar文件部署到本地maven仓库中。
mvn install:install-file -Dfile=arcgis-java-100.12.0.jar -DgroupId=com.esri.arcgisruntime -DartifactId=arcgis-java -Dversion=100.12.0 -Dpackaging=jar
2 导入jar包
在pom.xml中加入如下依赖。
<dependency><groupId>com.esri.arcgisruntime</groupId><artifactId>arcgis-java</artifactId><version>${arcgis.version}</version></dependency>
3 释放资源
您可以将arcgis-java-jnilibs-100.12.0.zip,arcgis-java-resources-100.12.0.zip 两个压缩包直接解压在项目根路径。项目结构如下图所示:
如果您不想放在项目中,也可以在用户文件夹下创建.arcgis\100.12.0文件夹,然后将压缩文件夹解压到此。
运行测试
无论是采用在线构建还是离线构建,都能测试出一样的结果。测试结果未发现异常。
本文的示例代码下载链接:https://download.csdn.net/download/monarch91/61158395
如何构建ArcGIS Runtime API for Java的运行环境相关推荐
- ArcGIS API for JavaScript 各个版本的SDK下载和发布 ,ArcGIS Runtime SDK for Android、ArcGIS Runtime SDK for Java等
ArcGIS API for JS 官网地址:https://developers.arcgis.com/javascript/ ArcGIS API for JavaScript 各个版本的SDK下 ...
- [Google API](8)构建使用Google API的Java应用程序
Google 搜索引擎建立起了通过 Web 服务接口可用的索引.拼写建议和缓存页面,从而允许所有语言的程序员都能就个人使用存取信息.Google 搜索引擎还提供了 Java API,从而存取数据更为便 ...
- Docker学习笔记之二,基于Dockerfile搭建JAVA Tomcat运行环境
前言 在第一篇文字中,我们完全人工方式,一个命令一个命令输入,实现一个 java tomcat运行环境,虽然也初见成效,但很累人.如果依靠依靠脚本构建一个Tomcat容器实例,一个命令可以搞定,何乐而 ...
- java jdkxp32_java运行环境(jre-8u65-windows-i586) 官方安装版 32位
JAVA运行必不可少的运行环境,你只要运行JAVA,必须安装JRE,目前还没有别的运行平台可以代替了,它包括Java虚拟机.Java平台核心类和支持文件.它不包含开发工具,就是编译器.调试器和其它工具 ...
- 使Docker搭建Java Web运行环境
Docker 是 2014 年最为火爆的技术之一,几乎所有的程序员都听说过它.Docker 是一种"轻量级"容器技术,它几乎动摇了传统虚拟化技术的地位,现在国内外已经有越来越多的公 ...
- 【jeecg Docker安装】使用 Docker 搭建 Java Web 运行环境
Docker 是 2014 年最为火爆的技术之一,几乎所有的程序员都听说过它.Docker 是一种"轻量级"容器技术,它几乎动摇了传统虚拟化技术的地位,现在国内外已经有越来越多的公 ...
- java 8 jre_Java 8——JAVA jre运行环境
Java 8 for Mac是功能强大的JAVA jre运行环境.Java是全世界目前使用最为广泛的编程语言,同时拥有全球最大的开发者专业社群.在全球云计算和移动互联网的产业环境下,Java更具备了显 ...
- sublime配置java编译运行环境(亲测有效)
sublime配置java编译运行环境(亲测有效) 对Java新手而言用eclipse进行一些简单的Java程序的编译与运行其实是比较麻烦的,也是没有必要的,用VS code的话会有很多warning ...
- 使用 Docker 搭建 Java Web 运行环境
Docker 是 2014 年最为火爆的技术之一,几乎所有的程序员都听说过它.Docker 是一种"轻量级"容器技术,它几乎动摇了传统虚拟化技术的地位,现在国内外已经有越来越多的公 ...
最新文章
- JAVA并发编程学习笔记------FutureTask
- from __future__ import absolute_import的作用
- 罗永浩直播成绩单:3小时带货超1.1亿元,近5000万人来听相声
- [翻译]AKKA笔记 - DEATHWATCH -7
- mysql的十进位,MySQL十进制字段的正确默认值是什么?
- 恢复误删的Windows文件
- 对矩阵进行QR分解的Matlab代码
- Fade out transition effect using CSS3
- tp5 mysql 使用ignore_tp5数据库配置操作
- 程序设计语言及其文法
- 从pvlib入门光伏发电系统
- SHON WEBB:坚持做这四件事,会让你的自律达到新的高度
- R语言使用plot函数可视化数据散点图,使用title函数为可视化图像设置自定义标题名称、自定义adj参数将标题向右侧移动
- ubuntu多屏幕 / 高分屏的分辨率配置
- TunesKit Video Repair for Mac(视频修复工具)
- IE访问HTTPS链接下载文件,IE提示无法下载
- ezdml 支付mysql 吗_非常好用的一个表设计工具(EZDML)
- PLC远程监控助力设备售后运维
- 自我感悟--思想与行动的结合
- vue 实现邮戳边缘
热门文章
- python飞机大战子弹不显示_飞机大战游戏 飞机打出一发子弹后就不出现子弹了...
- 照片转3d模型_这个AI能帮你女朋友自拍:从照片生成3D视频,总有个角度让她满意...
- 2019太原理工大学计算机录取分数线,太原理工大学2019年各省录取分数线
- C Linux 公交司机售票员问题
- 强盗分赃:充满逆向思维“的故事
- 结构阻尼比的4种常用测量方法概述
- 【游戏开发实战】Unity ShaderGraph实现图片的高斯模糊效果
- 一个超棒的开源解读项目【Linux内核揭秘】,一定不要错过啦!
- 2.Docker容器学习之新生入门必备基础知识
- vue2前端实现网页截图