arthas Arthas3.5.1版本在ARM架构下使用vmtool报错

omjgkv6w  于 2021-11-28  发布在  Java
关注(0)|答案(13)|浏览(1081)
  • 我已经在 issues 里搜索,没有重复的issue。

环境信息

  • arthas-boot.jar 或者 as.sh 的版本: 3.5.1
  • Arthas 版本: 3.5.1
  • 操作系统版本: EulerOS release 2.0 (SP8)
  • 目标进程的JVM版本: openjdk version "1.8.0_212"
  • 执行arthas-boot的版本: 3.5.1

重现问题的步骤

  1. 获取classloader的hash值
  2. sc -d org.springframework.data.redis.connection.jedis.JedisConnectionFactory
  3. vmtool --action getInstances -c 6072cbfb --className org.springframework.data.redis.connection.jedis.JedisConnectionFactory

期望的结果

返回当前redis链接示例

实际运行的结果

[arthas@20]$ vmtool --action getInstances -c 6072cbfb --className org.springframework.data.redis.connection.jedis.JedisConnectionFactory
vmtool error: no ArthasJniLibrary in java.library.path
vjrehmav

vjrehmav2#

arthas-bin.zip
@felix-ma 在我的m1 mac上运行ok,您试试?

jmo0nnb3

jmo0nnb33#

@dragon-zhang 您好,使用这个版本运行依旧报相同的错误,需要我提供什么额外的信息吗?我查看了压缩包lib目录下是有aarch64的。不清楚为什么报错。
因为环境是在云服务器的docker环境中。我只能本地把东西上传服务器上,在docker内测试。不知道会不会有影响。

@hengyunabc 您好,尝试了https://github.com/alibaba/arthas/releases/download/arthas-all-3.5.4/arthas-bin.zip 这个压缩包。依旧报相同的错误。

iswrvxsc

iswrvxsc4#

您说的arm架构,是linux的arm架构,不是mac m1吧?麻烦告知下云服务器的系统版本及架构,比如linux arm64位 发自我的iPhone…

------------------ 原始邮件 ------------------ 发件人: 糖醋小排骨***@***.***> 发送时间: 2021年9月22日 11:13 收件人: alibaba/arthas***@***.***> 抄送: dragon-zhang***@***.***>, Comment***@***.***> 主题: 回复:[alibaba/arthas] Arthas3.5.1版本在ARM架构下使用vmtool报错 (#1918) arthas-bin.zip @felix-ma 在我的m1 mac上运行ok,您试试? 您好,使用这个版本运行依旧报相同的错误,需要我提供什么额外的信息吗?我查看了压缩包lib目录下是有aarch64的。不清楚为什么报错。 因为环境是在云服务器的docker环境中。我只能本地把东西上传服务器上,在docker内测试。不知道会不会有影响。 试下最新版本 尝试了https://github.com/alibaba/arthas/releases/download/arthas-all-3.5.4/arthas-bin.zip 这个压缩包。依旧报相同的错误。 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

h9a6wy2h

h9a6wy2h5#

报错是因为还没有兼容好arm架构,我打出来的包仅适用于mac m1,可能需要您自己动手打so,稍后我把命令发出来。 发自我的iPhone…

------------------ 原始邮件 ------------------ 发件人: 糖醋小排骨***@***.***> 发送时间: 2021年9月22日 11:13 收件人: alibaba/arthas***@***.***> 抄送: dragon-zhang***@***.***>, Comment***@***.***> 主题: 回复:[alibaba/arthas] Arthas3.5.1版本在ARM架构下使用vmtool报错 (#1918) arthas-bin.zip @felix-ma 在我的m1 mac上运行ok,您试试? 您好,使用这个版本运行依旧报相同的错误,需要我提供什么额外的信息吗?我查看了压缩包lib目录下是有aarch64的。不清楚为什么报错。 因为环境是在云服务器的docker环境中。我只能本地把东西上传服务器上,在docker内测试。不知道会不会有影响。 试下最新版本 尝试了https://github.com/alibaba/arthas/releases/download/arthas-all-3.5.4/arthas-bin.zip 这个压缩包。依旧报相同的错误。 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

jm2pwxwz

jm2pwxwz6#

cd ~
git clone https://github.com/alibaba/arthas.git
cd ~/arthas/arthas-vmtool/src/main/java/arthas
javac -h . VmTool.java VmToolMXBean.java
cd ~/arthas/arthas-vmtool/src/main/native/src
g++ -I ~/arthas/arthas-vmtool/src/main/native/head/linux -I ~/arthas/arthas-vmtool/src/main/native/head jni-library.cpp -m64 -fPIC -shared -o libArthasJniLibrary-aarch64.so

libArthasJniLibrary-aarch64.so移动到~/arthas/lib

cd ~/arthas
mvn clean package -DskipTests=true

然后您试试~/arthas/packaging/target里最新的arthas-bin.zip,应该这样就好使了。

nkcskrwz

nkcskrwz7#

多谢您的答复,我本地开发环境是x86的windows。arm环境仅是部署环境,并且是docker的运行环境。
我也考虑过手动编译一个。但是限制比较大。我看看能不能申请一个部署环境的机器进行打包测试。

lb3vh1jj

lb3vh1jj8#

好的,如果能使用的话,可以尝试贡献哟 发自我的iPhone…

------------------ 原始邮件 ------------------ 发件人: 糖醋小排骨***@***.***> 发送时间: 2021年9月26日 11:19 收件人: alibaba/arthas***@***.***> 抄送: dragon-zhang***@***.***>, Mention***@***.***> 主题: 回复:[alibaba/arthas] Arthas3.5.1版本在ARM架构下使用vmtool报错 (#1918) 多谢您的答复,我本地开发环境是x86的windows。arm环境仅是部署环境,并且是docker的运行环境。 我也考虑过手动编译一个。但是限制比较大。我看看能不能申请一个部署环境的机器进行打包测试。 — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

dw1jzc5e

dw1jzc5e9#

@dragon-zhang 你好,在arm下编译的时候,报这个错误,请问是啥原因嘞。
jni-library.cpp:5:10: fatal error: arthas_VmTool.h: No such file or directory

xpcnnkqh

xpcnnkqh10#

@bxhzzx 您先试试#1918 (comment) 这个包,根本原因是arthas目前还不兼容arm架构。…

------------------ 原始邮件 ------------------ 发件人: zhangzhuxuan***@***.***> 发送时间: 2021年9月30日 17:17 收件人: alibaba/arthas***@***.***> 抄送: dragon-zhang***@***.***>, Mention***@***.***> 主题: 回复:[alibaba/arthas] Arthas3.5.1版本在ARM架构下使用vmtool报错 (#1918) @dragon-zhang 你好,在arm下编译的时候,报这个错误,请问是啥原因嘞。 jni-library.cpp:5:10: fatal error: arthas_VmTool.h: No such file or directory — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

mftmpeh8

mftmpeh811#

不好意思,才发现我的评论并没有告诉您如何生成arthas_VmTool.h

cd ~
git clone https://github.com/alibaba/arthas.git
cd ~/arthas/arthas-vmtool/src/main/java/arthas
javac -h . VmTool.java VmToolMXBean.java

通过javac -h来生成arthas_VmTool.h

uubf1zoe

uubf1zoe12#

感谢解答,搞定了。

vh0rcniy

vh0rcniy13#

Hi 请问下这个问题解决了吗? arthas现在是否有能支持linux arm架构的版本?

相关问题