From 73409fabb97ee9fcb44dfdd46bf4d1bcbe410629 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9B=A8=E6=9C=A8c?= <857448963@qq.com> Date: Fri, 18 Aug 2023 10:46:24 +0800 Subject: [PATCH] =?UTF-8?q?=E9=AB=98=E7=BA=A7=E7=AE=97=E6=B3=95=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/njcn/advance/utils/JnaCallDllOrSo.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pqs-advance/advance-boot/src/main/java/com/njcn/advance/utils/JnaCallDllOrSo.java b/pqs-advance/advance-boot/src/main/java/com/njcn/advance/utils/JnaCallDllOrSo.java index 4360e24ba..9f588faf1 100644 --- a/pqs-advance/advance-boot/src/main/java/com/njcn/advance/utils/JnaCallDllOrSo.java +++ b/pqs-advance/advance-boot/src/main/java/com/njcn/advance/utils/JnaCallDllOrSo.java @@ -1,7 +1,7 @@ package com.njcn.advance.utils; +import cn.hutool.core.io.resource.ClassPathResource; import lombok.extern.slf4j.Slf4j; -import org.springframework.core.io.ClassPathResource; import java.io.*; import java.net.URLDecoder; @@ -28,8 +28,12 @@ public class JnaCallDllOrSo { if(beginIndex == 0){ //linux操作系统 this.nameDll = "lib"+name+"_dll.so"; - ClassPathResource rtfPathResource = new ClassPathResource(nameDll); - this.path = rtfPathResource.getPath()+this.nameDll; + + String resource = Thread.currentThread().getContextClassLoader().getResource(this.nameDll).getPath(); + log.info(resource); + String path = new ClassPathResource(this.nameDll).getClassLoader().getResource(this.nameDll).getPath(); + log.info(path); + this.path = path; //this.path = URLDecoder.decode(this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath(), "UTF-8"); }else { this.nameDll = name+".dll"; @@ -39,9 +43,9 @@ public class JnaCallDllOrSo { } catch (UnsupportedEncodingException e) { log.error(e.getMessage()); } - /* if (JnaCallDllOrSo.jarPath.equals("")) { + if (JnaCallDllOrSo.jarPath.equals("")) { JnaCallDllOrSo.jarPath = this.path.substring(0, this.path.lastIndexOf('/')); - }*/ + } }