代码之家  ›  专栏  ›  技术社区  ›  user3453814

Docker运行获取“java.lang.UnsisfiedLinkError”

  •  0
  • user3453814  · 技术社区  · 2 年前

    当试图在Docker内运行春季启动应用程序时,出现“java.lang.UnsaisfiedLinkError:无法加载库:/opt/java/openjdk/lib/libawt_xawt.so”错误。

    Docker文件

    
    FROM eclipse-temurin:17-jdk-alpine
    VOLUME /tmp
    ARG JAR_FILE=target/*.jar
    COPY ${JAR_FILE} app.jar
    ENTRYPOINT ["java","-jar","/app.jar"]
    

    下面是完整的堆栈跟踪

    Exception in thread "main" java.lang.reflect.InvocationTargetException
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
    Caused by: java.lang.UnsatisfiedLinkError: Can't load library: /opt/java/openjdk/lib/libawt_xawt.so
        at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2398)
        at java.base/java.lang.Runtime.load0(Runtime.java:755)
        at java.base/java.lang.System.load(System.java:1953)
        at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
        at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
        at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
        at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
        at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:315)
        at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:285)
        at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2403)
        at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818)
        at java.base/java.lang.System.loadLibrary(System.java:1989)
        at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1388)
        at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1386)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at java.desktop/java.awt.Toolkit.loadLibraries(Toolkit.java:1385)
        at java.desktop/java.awt.Toolkit.initStatic(Toolkit.java:1423)
        at java.desktop/java.awt.Toolkit.<clinit>(Toolkit.java:1397)
        at java.desktop/java.awt.Desktop.isDesktopSupported(Desktop.java:329)
        at java.desktop/java.awt.Desktop.getDesktop(Desktop.java:303)
        at com.docusign.App.openHomePage(App.java:65)
        at com.docusign.App.main(App.java:37)
        ... 8 more
    

    我不知道该怎么办,感谢任何意见。

    0 回复  |  直到 2 年前