From 7637761fbb3d76d521e0ea404bb0cfcc5e6238b3 Mon Sep 17 00:00:00 2001 From: pandaapo <35672972+pandaapo@users.noreply.github.com> Date: Wed, 19 Oct 2022 16:00:07 +0800 Subject: [PATCH] support packaging arthas-vmtool in 32-bit windows. (#2316) --- arthas-vmtool/pom.xml | 25 ++++++++++++++++++- .../com/taobao/arthas/common/OSUtils.java | 4 +++ .../com/taobao/arthas/common/VmToolUtils.java | 3 +++ 3 files changed, 31 insertions(+), 1 deletion(-) 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"; + } } }