diff --git a/arthas-vmtool/pom.xml b/arthas-vmtool/pom.xml
index 1d1c95008..b317e18bc 100644
--- a/arthas-vmtool/pom.xml
+++ b/arthas-vmtool/pom.xml
@@ -161,6 +161,21 @@
+
+
+
+ linux-${os.arch}
+
+
+ linux
+ !amd64
+
+
+
+ linux
+ libArthasJniLibrary-${os.arch}.so
+
+
diff --git a/common/src/main/java/com/taobao/arthas/common/OSUtils.java b/common/src/main/java/com/taobao/arthas/common/OSUtils.java
index 13189615e..81bb020a3 100644
--- a/common/src/main/java/com/taobao/arthas/common/OSUtils.java
+++ b/common/src/main/java/com/taobao/arthas/common/OSUtils.java
@@ -71,6 +71,10 @@ public class OSUtils {
return "x86_32".equals(arch);
}
+ public static boolean isX86_64() {
+ return "x86_64".equals(arch);
+ }
+
private static String normalizeArch(String value) {
value = normalize(value);
if (value.matches("^(x8664|amd64|ia32e|em64t|x64)$")) {
@@ -127,8 +131,7 @@ public class OSUtils {
if ("s390x".equals(value)) {
return "s390_64";
}
-
- return UNKNOWN;
+ return value;
}
private static String normalize(String value) {
diff --git a/common/src/main/java/com/taobao/arthas/common/VmToolUtils.java b/common/src/main/java/com/taobao/arthas/common/VmToolUtils.java
index ff135adfb..f4c4c0748 100644
--- a/common/src/main/java/com/taobao/arthas/common/VmToolUtils.java
+++ b/common/src/main/java/com/taobao/arthas/common/VmToolUtils.java
@@ -12,11 +12,14 @@ public class VmToolUtils {
libName = "libArthasJniLibrary.dylib";
}
if (OSUtils.isLinux()) {
- libName = "libArthasJniLibrary-x64.so";
if (OSUtils.isArm32()) {
libName = "libArthasJniLibrary-arm.so";
} else if (OSUtils.isArm64()) {
libName = "libArthasJniLibrary-aarch64.so";
+ } else if (OSUtils.isX86_64()) {
+ libName = "libArthasJniLibrary-x64.so";
+ }else {
+ libName = "libArthasJniLibrary-" + OSUtils.arch() + ".so";
}
}
if (OSUtils.isWindows()) {
diff --git a/packaging/src/main/assembly/assembly.xml b/packaging/src/main/assembly/assembly.xml
index 121523e78..00b823d40 100644
--- a/packaging/src/main/assembly/assembly.xml
+++ b/packaging/src/main/assembly/assembly.xml
@@ -57,6 +57,7 @@
../bin/as-service.bat
+
@@ -66,5 +67,12 @@
../lib
+
+ ../arthas-vmtool/target
+ lib
+
+ libArthasJniLibrary*
+
+