liunx下安装gdal,并编译部署供java项目调用

**需求:项目涉及到从地图上的坐标点生成DXF文件并导出功能,涉及到cad和地理坐标的知识java项目资料比较少,多方了解选用了geotools+gdal实现此功能,而gdal需要自己手动编译dll,os文件, 闲话少说,方便自己项目迁移部署留档和小伙伴们参考。

**
因为是liunx系统,直接去官网下载二进制源文件 编译

一,说明:
1.gdal 官网:https://gdal.org/download.html
在这里插入图片描述建造要求
要构建GDAL 3或更高版本,您至少需要C ++ 11兼容的编译器以及 PROJ 6或更高版本。这只会给您一个最少的构建,它将缺少很多驱动程序。有关其他可选依赖项,请查阅Raster驱动程序和Vector驱动程序页面。
2.PROJ 官网:https://proj.org/index.html
在这里插入图片描述建造要求
C99编译器

C ++ 11编译器

SQLite3> = 3.11(标头,库和可执行文件)

libtiff> = 4.0(标题和库)

可选(但推荐):curl> = 7.29.0

GNU make for autotools build或CMake> = 3.9
3.sqlite 官网:https://www.sqlite.org/index.html

二,安装
从官方给出的构建要求,安装
gcc和g++ :这个如果没有去装一个就好了
SQLite3:PROJ需要的环境 下载地址:https://www.sqlite.org/download.html
PROJ:gdal需要的环境 下载地址:https://proj.org/download.html

注:gadl3.0以上需要proj6以上

GDAL:**下载地址 :https://gdal.org/download.html
SQLite3:解压,配置 并编译 SQLite3:

tar -zxvf sqlite-autoconf-3330000.tar.gz
cd sqlite-autoconf-3330000/
./configure
make
make install

PROJ: 解压、配置 并编译 PROJ

tar -zxvf proj-6.3.0.tar.gz
cd proj-6.3.0/
./configure
make
make install

GDAL:解压,配置 并编译 GDAL

tar -zxvf gdal-3.2.0.tar.gz
cd gdal-3.2.0/
./configure
make
make install

不配置./configure编译路径 默认在/usr/local/lib下

修改配置文件
vi /etc/profile
新增:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
source /etc/profile
检测gdal是否编译成功
gdalinfo -version
如上图
三,gdal编译java 进入
编辑 vi gdal-3.2.0/swig/java/java.opt 配置 JAVA_HOME 路径:

#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

编译:

cd gdal-3.2.0/swig/java/
make

路径下会生成jar包,把jar包copy到自己项目的lib下

>  <dependency>
>             <groupId>org.gdal</groupId>
>             <artifactId>gdal</artifactId>
>             <version>3.2.0</version>
>             <scope>system</scope>
>             <systemPath>${project.basedir}/lib/linux/gdal.jar</systemPath> 
> </dependency>

测试生成dxf文件,服务器环境安装搭建完成!!
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
要在Linux上编译GDAL和GEOS,并使用Java调用它们,您可以按照以下步骤进行操作: 1. 首先,按照前面提到的步骤在Linux上编译安装GEOS。 2. 接下来,下载GDAL源代码并解压缩。您可以从GDAL的官方网站(https://gdal.org/)上找到最新版本的下载链接。 3. 进入解压后的GDAL源代码目录: ``` cd gdal-x.x.x ``` 4. 运行以下命令来配置GDAL编译选项,并指定GEOS的路径: ``` ./configure --with-geos=/usr/local ``` 确保将`/usr/local`替换为您实际安装GEOS的路径。 5. 编译安装GDAL: ``` make sudo make install ``` 6. 完成上述步骤后,GDAL将成功编译安装在您的Linux系统中。 7. 使用Java调用GDAL和GEOS需要使用Java绑定库。安装Java绑定库可以通过以下步骤完成: - 下载Java绑定库(JavaGDAL)的源代码。您可以从GDAL官方网站(https://gdal.org/java/)上找到相应的下载链接。 - 解压缩下载的源代码文件,并进入解压后的目录。 - 编译安装Java绑定库: ``` make sudo make install ``` 8. 在使用Java调用GDAL和GEOS之前,确保您的Java项目中已经正确设置了相关的类路径和依赖项。 例如,您可以使用以下命令设置类路径: ``` export CLASSPATH=/usr/local/share/java/gdal.jar:$CLASSPATH ``` 确保将`/usr/local/share/java/gdal.jar`替换为实际的gdal.jar文件路径。 9. 在您的Java代码中,您可以使用GDAL和GEOS的API来执行各种地理空间操作和分析。 例如,您可以使用以下示例代码加载一个矢量文件并执行缓冲区分析: ```java import org.gdal.ogr.DataSource; import org.gdal.ogr.Layer; public class GDALExample { public static void main(String[] args) { // 打开矢量文件 String filePath = "path/to/your/vector/file.shp"; DataSource dataSource = ogr.Open(filePath); // 获取第一个图层 Layer layer = dataSource.GetLayer(0); // 执行缓冲区分析等其他地理空间操作... } } ``` 请注意,以上步骤和示例代码仅提了一个基本的指导,具体的设置和操作可能因您的环境和需求而有所不同。确保您在使用之前阅读并遵循相关的官方文档和示例代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值