首页 / 浏览问题 / 桌面GIS / 问题详情
linux 安装完idesktopX 10.1.2启动报错
7EXP 2021年08月31日
使用产品:supermap-idesktopx-10.1.2-0330-5260-86195-linux64-bin-chs.tar.gz

操作系统:CentOS 8.2 64bit

按照readme文档解压后安装许可驱动,首次安装许可驱动。

安装成功,进入解压目录./startup.sh启动报错

报错信息为:

java.lang.NullPointerException
    at sun.awt.X11FontManager.getDefaultPlatformFont(X11FontManager.java:800)
    at sun.font.SunFontManager$2.run(SunFontManager.java:433)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.font.SunFontManager.<init>(SunFontManager.java:376)
    at sun.awt.X11FontManager.<init>(X11FontManager.java:57)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
    at java.lang.Class.newInstance(Class.java:442)
    at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
    at java.awt.Font.getFont2D(Font.java:491)
    at java.awt.Font.getFamily(Font.java:1220)
    at java.awt.Font.getFamily_NoClientCode(Font.java:1194)
    at java.awt.Font.getFamily(Font.java:1186)
    at sun.swing.SwingUtilities2.displayPropertiesToCSS(SwingUtilities2.java:1478)
    at javax.swing.plaf.basic.BasicHTML$BasicDocument.setFontAndColor(BasicHTML.java:366)
    at javax.swing.plaf.basic.BasicHTML$BasicDocument.<init>(BasicHTML.java:355)
    at javax.swing.plaf.basic.BasicHTML$BasicEditorKit.createDefaultDocument(BasicHTML.java:311)
    at javax.swing.plaf.basic.BasicHTML.createHTMLView(BasicHTML.java:54)
    at javax.swing.plaf.basic.BasicHTML.updateRenderer(BasicHTML.java:207)
    at javax.swing.plaf.basic.BasicLabelUI.installComponents(BasicLabelUI.java:348)
    at javax.swing.plaf.basic.BasicLabelUI.installUI(BasicLabelUI.java:325)
    at javax.swing.JComponent.setUI(JComponent.java:666)
    at javax.swing.JLabel.setUI(JLabel.java:261)
    at javax.swing.JLabel.updateUI(JLabel.java:275)
    at javax.swing.JLabel.<init>(JLabel.java:164)
    at javax.swing.JLabel.<init>(JLabel.java:235)
    at com.supermap.desktop.core.startup.LabelURL.<init>(SourceFile:22)
    at com.supermap.desktop.core.startup.StartupDialog.<init>(SourceFile:33)
    at com.supermap.desktop.core.utilties.SplashScreenUtilities.getStartupDialog(SourceFile:95)
    at com.supermap.desktop.core.Application.initialize(SourceFile:324)
    at com.supermap.desktop.iDesktop.Startup.main(SourceFile:103)

麻烦看一下什么问题导致

2 个回答

请问您当前的系统有安装图形化界面吗?您的这个报错看着像是因为图形化界面以及字体等原因导致的。

您在当前的iDesktopX的安装目录的support文件夹下,执行这个命令来安装下依赖,./dependencies_check_and_install.sh install -y

执行完上面的命令后再重新启动iDesktopX,看是否能正常启动成功。
2,243EXP 2021年09月01日
是的,我反编译了里面的core核心jar包,看代码貌似是这个问题,但是这个命令我执行了还是不行,第一次报错的时候没有执行,然后就执行了但是还是一样的错误。

图附在下面了,是否要删了重新解压还是。

另:刚刚装了supermap-iserver-10.1.3a-linux64.tar.gz顺利安装成功

是的,我反编译了里面的core核心jar包,看代码貌似是这个问题,但是这个命令我执行了还是不行,第一次报错的时候没有执行,然后就执行了但是还是一样的错误。

7EXP 2021年09月01日
您那边执行完 ./dependencies_check_and_install.sh install -y 后重新启动iDesktopX目前能启动成功了吗?如果还是失败的话,控制台报什么错误?
还是一样的错,昨天就执行过了,就是报控指针
您那边能提供下您当前使用的centos8.2的镜像吗?我在本地验证下,看是否能重现您的问题。

有的话可以共享下链接或者发我邮箱zhangdingxiang@supermap.com
如果您那边安装的iServer10.1.3能正常启动并使用的话可以尝试以下方法:

将iDesktopX根目录下的bin文件夹整个替换为iServer安装目录/supports/objectsjava/bin文件夹,这样来排查是否是因为依赖不足的问题导致的启动失败.
感谢回复,虽然还是不知道问题在哪里,我尝试了重装系统,改为了os 7.9的。然后再次尝试安装,成功了,可能是系统的问题,是不支持os8的
虽然可以启动了,但是启动的时候还是报错。一直在初始化。

在启动之前执行了./dependencies_check_and_install.sh install -y 执行完Check finished.

错误信息为:

an exception caught at Environment.load(), program will continue running.
java.lang.UnsatisfiedLinkError: /opt/superMap-idesktop/superMap10.1.2/bin/libWrapjRealspace.so: /opt/superMap-idesktop/superMap10.1.2/bin/libnss3.so: version `NSS_3.52' not found (required by /lib64/libssl3.so)
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1822)
    at java.lang.Runtime.load0(Runtime.java:809)
    at java.lang.System.load(System.java:1086)
    at com.supermap.data.Environment.load(Environment.java:484)
    at com.supermap.data.Environment.LoadWrapJ(Environment.java:432)
    at com.supermap.data.InternalHandle.<clinit>(InternalHandle.java:19)
    at com.supermap.desktop.core.GlobalParameters.<clinit>(SourceFile:1176)
    at com.supermap.desktop.core.Application.b(SourceFile:482)
    at com.supermap.desktop.core.Application.initialize(SourceFile:327)
    at com.supermap.desktop.iDesktop.Startup.main(SourceFile:103)
java.lang.UnsatisfiedLinkError: com.supermap.data.EnvironmentNative.jni_InitEnvironment()V
    at com.supermap.data.EnvironmentNative.jni_InitEnvironment(Native Method)
    at com.supermap.data.Environment.LoadWrapJ(Environment.java:450)
    at com.supermap.data.InternalHandle.<clinit>(InternalHandle.java:19)
    at com.supermap.desktop.core.GlobalParameters.<clinit>(SourceFile:1176)
    at com.supermap.desktop.core.Application.b(SourceFile:482)
    at com.supermap.desktop.core.Application.initialize(SourceFile:327)
    at com.supermap.desktop.iDesktop.Startup.main(SourceFile:103)
Exception in thread "main" java.lang.UnsatisfiedLinkError: com.supermap.data.GeoStyleNative.jni_New()J
    at com.supermap.data.GeoStyleNative.jni_New(Native Method)
    at com.supermap.data.GeoStyle.<init>(GeoStyle.java:31)
    at com.supermap.desktop.core.GlobalParameters.<clinit>(SourceFile:1176)
    at com.supermap.desktop.core.Application.b(SourceFile:482)
    at com.supermap.desktop.core.Application.initialize(SourceFile:327)
    at com.supermap.desktop.iDesktop.Startup.main(SourceFile:103)
将bin目录下的libnss3.so移走或删除,再重新启动iDesktopX看下,这个是由于该操作系统中系统库已存在libnss系统库,组件bin里的libnss3.so和centos系统的冲突导致的.
感谢解答,现在可以成功运行了
如果您那边能提供您当前使用的centos8.2的镜像文件,我这边可以验证下,看是否是因为不兼容问题导致的。

不好意思,因为是新服务器,当时没有给系统做镜像,现在直接把系统重装为7.9了。

用的是华为云的HECS云服务器,如果需要测试环境的话,您可以去https://mirrors.huaweicloud.com/home下载

...