diff --git a/arthas-vmtool/pom.xml b/arthas-vmtool/pom.xml
index 824bf12af..83b41b1b2 100644
--- a/arthas-vmtool/pom.xml
+++ b/arthas-vmtool/pom.xml
@@ -46,6 +46,30 @@
+
+ windows
+
+
+ windows
+
+
+
+ windows
+
+
+
+ windows-32
+
+
+ windows
+ x86
+
+
+
+ -m32
+ libArthasJniLibrary-x86.dll
+
+
windows-amd64
@@ -55,7 +79,6 @@
- windows
-m64
libArthasJniLibrary-x64.dll
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 d167377a4..13189615e 100644
--- a/common/src/main/java/com/taobao/arthas/common/OSUtils.java
+++ b/common/src/main/java/com/taobao/arthas/common/OSUtils.java
@@ -67,6 +67,10 @@ public class OSUtils {
return "aarch_64".equals(arch);
}
+ public static boolean isX86() {
+ return "x86_32".equals(arch);
+ }
+
private static String normalizeArch(String value) {
value = normalize(value);
if (value.matches("^(x8664|amd64|ia32e|em64t|x64)$")) {
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 179de0836..ff135adfb 100644
--- a/common/src/main/java/com/taobao/arthas/common/VmToolUtils.java
+++ b/common/src/main/java/com/taobao/arthas/common/VmToolUtils.java
@@ -21,6 +21,9 @@ public class VmToolUtils {
}
if (OSUtils.isWindows()) {
libName = "libArthasJniLibrary-x64.dll";
+ if (OSUtils.isX86()) {
+ libName = "libArthasJniLibrary-x86.dll";
+ }
}
}