gdal部署及java调用详细过程(linux版本-ubuntu)

news/2025/3/16 5:25:56/文章来源:https://www.cnblogs.com/prophet-ljh/p/18504063

建议gdal用3.5.3前的版本,因为目前网上大部分文章都是适用这个版本之前的编译方法

一、gdal部署
1)安装gcc
通过系统包管理器安装
sudo apt install gcc
gcc --version

2)安装g++
通过系统包管理器安装
sudo apt install g++
g++ --version

3)安装Ant
通过系统包管理器安装
sudo apt-get install ant
ant -version

4)安装pcre
通过系统包管理器安装
sudo apt-get install libpcre3 libpcre3-dev
pcre-config --version

5)安装swig
通过系统包管理器安装
sudo apt-get install swig
swig -version

6)安装proj
通过系统包管理器安装
sudo apt-get install libproj-dev
proj --version

7)安装geos
通过系统包管理器安装
sudo apt-get install libgeos-dev
geos-config --version

8)安装gdal
GDAL:解压,配置 并编译 GDAL
tar -zxvf gdal-3.5.3.tar.gz
cd gdal-3.5.3/
./configure --prefix=/data/gdal
make
make install

9)配置gdal动态链接库

10)配置环境变量
vi /etc/profile(/etc/profile只能root用户编辑,设置的环境变量其他用户都生效)
新增:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/gdal/lib
source /etc/profile
检测gdal是否编译成功
gdalinfo -version

二、java程序jni调用

1)编辑解压后目录 vi gdal-3.5.3/swig/java/java.opt 配置 JAVA_HOME(当前系统jdk路径):

点击查看代码
#java stuff
#java_home = "c:\program files\java\jdk1.6.0_16"
#java_home = /usr/lib/jvm/java-6-openjdk/
#java_home = /usr/lib/jvm/java-7-openjdk-amd64/
javadoc=$(java_home)/bin/javadoc
javac=$(java_home)/bin/javac
java=$(java_home)/bin/java
jar=$(java_home)/bin/jar
java_include=-i$(java_home)/include -i$(java_home)/include/linux

2)编译:
cd gdal-3.2.0/swig/java/
make

3)路径下会生成jar包,把jar包copy到自己项目的libs文件夹下

点击查看代码
<dependency><groupId>org.gdal</groupId><artifactId>gdal</artifactId><version>3.5.3</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/libs/gdal.jar</systemPath></dependency>

同时把路径下的libgdalalljni.so文件拷贝到/data/gdal/lib目录下(此目录是gdal的库)

服务启动命令,添加-Djava.library.path=/data/gdal/lib,主动指向gdal库,程序jvm就可通过libgdaljni.so调用jni
nohup java -Djava.library.path=/data/gdal/lib -jar -Xmx2048M wrjsr.jar > $LOG_FILE 2>&1 &

GDAL库的默认路径
gdal运行时执行程序路径如下:/data/gdal/bin/gdalinfo
gdal动态库静态库文件路径:/data/gdal/lib/libgdal.a ----------/data/gdal/lib/libgdal.so
gdal头文件路径:/data/gdal/include/gdal/gdal_priv.h
gdal Java接口文件路径:/data/gdal/lib/libgdaljni.so

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/822382.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

KBJ2510-ASEMI整流桥KBJ2510参数、封装、尺寸

GBJ2510-ASEMI整流桥GBJ2510参数、封装、尺寸编辑:ll KBJ2510-ASEMI整流桥KBJ2510参数、封装、尺寸 型号:KBJ2510 品牌:ASEMI 封装:KBJ-4 批号:2024+ 现货:50000+ 最大重复峰值反向电压:1000V 最大正向平均整流电流(Vdss):25A 功率(Pd):大功率 芯片个数:4 引脚数量:…

NS3安装

下载压缩包,解压 发现是直接打包好的虚拟机VMware打开vmx文件是一个ubantu系统 在root的家目录下发现有一个打包好的ns3的tar.bz2文件,解压 sudo tar -jxvf ns-allinone-3.33.tar.bz2不sudo也可以解压到当前目录,进入文件夹 cd ns-allinone-3.33 ls -a发现有一个build.py文件…

发电机过速诊断研究 - 基于LSTM进行状态监测

发电机过速诊断研究 思路 输入是选择的20个特征,切片长度为6,即 \(x \in \mathbb{R}^{6 \times 20}\)。 输出是 0-1,1表示故障,0表示正常,使用 MSELoss。 模型 双层 LSTM + Linear 结果看起来效果很不好。

DataGrip 2024.2.2 最新安装教程(附激活-2099年~)

下载 DataGrip 2024.2.2 版本的安装包。下载补丁https://pan.quark.cn/s/fcc23ab8cadf检查免责声明:本文中的资源均来自互联网,仅供个人学习和交流使用,严禁用于商业行为,下载后请在24小时内从电脑中彻底删除。对于因非法使用而引起的版权争议,与作者无关。所有资源仅供学…

缺陷的判定与提交

第九章 提交缺陷报告一、 软件缺陷的判定什么是缺陷软件存在着不符合质量需求或违背软件用户、客户、企业意愿的问题,这就是软件缺陷(Defect),又叫“Bug(臭虫)”。软件缺陷的判定准则软件未达到产品说明书标明的功能;产品说明书简称为说明(spec)或产品说明(product s…

高级语言程序设计第四次个人作业

这个作业属于哪个课程:https://edu.cnblogs.com/campus/fzu/2024C/ 这个作业要求在哪里:https://edu.cnblogs.com/campus/fzu/2024C/homework/13293 学号:222200432 姓名:赛比海托合地亚尔 第六章 6.16.16.16.56.16.76.16.86.16.96.16.106.16.126.16.136.16.156.16.166.16.…

VulnHub-Brainpan1 靶机笔记

Brainpan1 靶机笔记 概述 靶机地址:https://vulnhub.com/entry/brainpan-1,51/#download 这台靶机是很好的缓冲区溢出漏洞利用的练习靶机,涉及到逆向和缓冲区溢出漏洞挖掘的一些知识。 一、nmap 扫描 1)端口扫描 nmap -sT --min-rate 10000 -p- -o ports 192.168.11.12Nmap …

Linux Centos安装ElasticSearch、分词器、es-head和Kibana

1 前言 Java中比较流行的搜索引擎是Elasticsearch,传统的数据库搜索,使用like’关键字%’,当内容过多时性能会大大降低,所以Elasticsearch就出现了。 下面,记录下Linux下Elasticsearch的安装过程。 2 Linux下安装Elasticsearch 2.1 下载和解压安装包 官网下载地址: https…

EDUSRC | 记录几张edusrc证书站挖掘

在web资产挖证书站是比较难的,尤其是没有账号密码进入后台或者统一的情况下,于是便转变思路,重点放在信息收集,收集偏远资产上。 一、XX大学 srping actuator未授权 茫茫c段,找到这么一处资产一个大学的课题组,有的人可能看到就放弃了,但他使用的不是静态的组件,指纹识…

Linux 中awk语句匹配首个数字与匹配首个连续的数字的区别

001、[root@localhost test]# cat b.txt ## 测试数据 0001 20081223efs333kjfdj EREADFASDLKJCV 0002 20081208djfks2288daa JDKFJALSDJFsddf 0003 20081208efskjfdj EREADFASDLKJCV 0004 20081211djfksdaa1234 JDKFJALSDJFsdd…

HarmonyOS:Node-API典型场景开发(1)

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤博客园地址:为敢技术(https://www.cnblogs.com/strengthen/ )➤GitHub地址:https://github.com/strengthen➤原文地址:https://www.cnblogs.com/strengthen/p/18504101➤如果链接不是为敢技术的博客园…