首页 / 浏览问题 / 云GIS / 问题详情
IObjects java centos下运行报错
61EXP 2018年08月30日

使用产品:iobjectsjava 9d

数据类型:文件型

环境:CentOS Linux release 7.4.1708 (Core)

创建:

Workspace workspace = new Workspace();

异常:

Exception in thread "main" java.lang.UnsatisfiedLinkError: com.supermap.data.EnvironmentNative.jni_GetCurrentCulture()Ljava/lang/String;
    at com.supermap.data.EnvironmentNative.jni_GetCurrentCulture(Native Method)
    at com.supermap.data.Environment.getCurrentCulture(Unknown Source)
    at com.supermap.data.Environment.<clinit>(Unknown Source)
    at com.supermap.data.InternalHandle.<clinit>(Unknown Source)
    at com.dituhui.openapi.dubbox.Main.main(Main.java:11)

1个回答

报错提示找不到依赖,确保 1.java组件变量已配置 2.许可驱动已安装 3.依赖库是否都完整(java组件包没自带依赖库的安装脚本,iServer产品自带了依赖库安装脚本)。具体可参考该链接https://blog.csdn.net/supermapsupport/article/details/68922195 

1,555EXP 2018年08月30日

[License Name]                               [LicMode]    [MaxLogins]    [Info]
********************************************************************************
65403.65400.COMMONTRAILLICENSE               Trail        65535        2018-08-30 14:53:33 ~ 2018-11-28 14:53:33
许可没问题,依赖库用iServer脚本安装了,java正常运行,单独创建点对象都行,

Point2D point2D = new Point2D(105.308413,27.705142); //ok
GeoLine geoLine = new GeoLine(); //java.lang.UnsatisfiedLinkError: com.supermap.data.EnvironmentNative.jni_GetCurrentCulture()
jdk和java组件具体版本是多少?是多少位的?
jdk

openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
 

objectsjava

9.0.0 15320 63946 Beijing
将jdk的jre的这个目录../jdk/jre/lib/amd64添加到环境变量后,在试试看
/data/wes/objectjava9d/Bin:/usr/lib/oracle/11.2/client64/lib:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64/jre/lib/amd64

之前报少libawt_xawt.so就加了的
将iObjects Java 中 libmawt.so 替换到 jdk/jre/lib/amd64/headless 中的 libmawt.so
headless没这个文件夹
...