高级算法bug

This commit is contained in:
2023-08-21 14:27:30 +08:00
parent 5c1eaec013
commit a63ae4ce15

View File

@@ -31,20 +31,17 @@ public class JnaCallDllOrSo {
//linux操作系统 //linux操作系统
this.nameDll = "lib" + name + "_dll"; this.nameDll = "lib" + name + "_dll";
suffix = ".so"; suffix = ".so";
// this.path = "/usr/local/jarfiles/advanceboot/BOOT-INF/classes/";
//this.path = URLDecoder.decode(this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath(), "UTF-8");
} else { } else {
this.nameDll = name; this.nameDll = name;
// this.path = URLDecoder.decode(this.getClass().getProtectionDomain().getCodeSource().getLocation().getPath().replaceFirst("/", ""), "UTF-8");
} }
File dockerFile = new File("/usr/local/dllFile/".concat(this.nameDll.concat(suffix))); File tempFile;
if(dockerFile.exists()){
this.path = dockerFile.getAbsolutePath();
}else {
dockerFile.mkdirs();
dockerFile.createNewFile();
}
try (InputStream inputStream = getClass().getClassLoader().getResourceAsStream(this.nameDll.concat(suffix))) { try (InputStream inputStream = getClass().getClassLoader().getResourceAsStream(this.nameDll.concat(suffix))) {
try (FileOutputStream outputStream = new FileOutputStream(dockerFile)) { tempFile = File.createTempFile(this.nameDll, suffix);
try (FileOutputStream outputStream = new FileOutputStream(tempFile)) {
byte[] buffer = new byte[1024]; byte[] buffer = new byte[1024];
int bytesRead; int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) { while ((bytesRead = inputStream.read(buffer)) != -1) {
@@ -52,7 +49,9 @@ public class JnaCallDllOrSo {
} }
} }
} }
this.path = dockerFile.getAbsolutePath(); this.path = tempFile.getAbsolutePath();
System.out.println(1);
System.out.println(1);
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage()); log.error(e.getMessage());
} }
@@ -63,6 +62,8 @@ public class JnaCallDllOrSo {
public String getStrpath() { public String getStrpath() {
return this.path; return this.path;
// String aa = this.path + this.nameDll;
// return aa.replace("/", File.separator);
} }
public void setPath() { public void setPath() {