今天在引入庫檔案時,包了找不到 jcef 的路徑。報錯如下 java.lang.UnsatisfiedLinkError: no jcef in java.library.path
使用的軟體和環境如下:
系統:Ubuntu
軟體:interllij
語言:Java + kotlin
Exception in thread "main" java.lang.UnsatisfiedLinkError: no jcef in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at org.cef.CefApp.startup(CefApp.java:523)
at cn.com.client.WebClientKt.main(WebClient.kt:207)
at cn.com.client.WebClientKt.main(WebClient.kt)
第一種解決方法(直接通過右鍵kotlin檔案運作main方法的):
在運作配置中的 VM options 添加上所引用的庫的路徑,
配置如:-Djava.library.path=/home/xxxxx/03_CEF/jcef_build
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL6VEROJTU610dNpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL1AjN1ITN1MTM4EDMxkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
第二種解決辦法:通過gradle進行運作程式的,在 build.gradle 檔案中确認 applicationDefaultJvmArgs 中是否添加了
-Djava.library.path=/home/xxxxx/03_CEF/jcef_build 路徑配置,
application {
applicationName = "WebClient"
mainClassName = "cn.com.client.WebClientKt"
applicationDefaultJvmArgs=['-Djava.library.path=/home/xxxxx/03_CEF/jcef_build','-Xdebug', '-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=8889']
}
如果有,直接運作