我正在尝试在jmap
服务器上使用CentOS
命令,但它一直告诉我即使安装了JDK也找不到该命令。
以下是命令java -version
的输出:
java version "1.7.0_25"
OpenJDK Runtime Environment (rhel-2.3.10.4.el6_4-x86_64)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
如何解决此问题?
答案 0 :(得分:12)
您应该能够在 java-1.8.0-openjdk-devel-debug 或 java-1.7.0-openjdk-中找到 jmap Redhat / Centos上的devel-debug 或 java-1.6.0-openjdk-devel-debug 包。要安装它,请以root身份运行以下命令:
yum install java-1.8.0-openjdk-devel-debug
为了完整性,这里是检查哪些包包含jmap的命令:
yum whatprovides '*/jmap'
以下是示例输出:
1:java-1.6.0-openjdk-devel-1.6.0.37-1.13.9.4.el7_1.x86_64 : OpenJDK Development Environment
Repo : updates
Matched from:
Filename : /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.37.x86_64/bin/jmap
1:java-1.7.0-openjdk-devel-1.7.0.91-2.6.2.3.el7.x86_64 : OpenJDK Development Environment
Repo : base
Matched from:
Filename : /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64/bin/jmap
1:java-1.8.0-openjdk-devel-1.8.0.65-3.b17.el7.x86_64 : OpenJDK Development Environment
Repo : base
Matched from:
Filename : /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64/bin/jmap
1:java-1.8.0-openjdk-devel-debug-1.8.0.65-3.b17.el7.x86_64 : OpenJDK Development Environment with full debug on
Repo : base
Matched from:
Filename : /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64-debug/bin/jmap
1:java-1.8.0-openjdk-devel-debug-1.8.0.65-3.b17.el7.x86_64 : OpenJDK Development Environment with full debug on
Repo : @base
Matched from:
Filename : /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64-debug/bin/jmap
答案 1 :(得分:4)
我的情况有点奇怪(在openjdk:8-jre
Docker图片中运行),但这种组合有效
cat /etc/debian_version # 8.6
apt install -t jessie-backports openjdk-8-jre-headless ca-certificates-java
apt-get install -f -y openjdk-8-jdk-headless
apt-get install -f -y openjdk-8-dbg
答案 2 :(得分:3)
以下对我有用:
sudo apt-get install openjdk-8-jdk openjdk-8-dbg
答案 3 :(得分:0)
java路径必须在“PATH”系统中。
$JAVA_HOME/bin
答案 4 :(得分:0)
centos上的OpenJDK不包含jmap实用程序。在另一个平台上测试或使用jhat java_pid1234.hprof
命令在另一个平台上检查转储后。
jhat在大型转储上运行速度慢,甚至内存不足!我使用jhat -port 7000 -J-mx2048m java_pid1234.hprof
,因此您的计算机上需要大量内存。
答案 5 :(得分:0)
JRE并未默认提供它-您应该可以使用以下命令
进行安装yum install java-1.8.0-openjdk-devel-debug
答案 6 :(得分:0)
我发现在我的系统(elasticsearch容器)上它被排除在外:
$ grep exclude /etc/yum.conf
exclude=java-1.8.0-openjdk*
如果我将其注释掉,则可以使用yum install ...
来查看并安装此软件包
答案 7 :(得分:0)
对于Debian“破坏者”-10.3-
cat /etc/debian_version # 10.3
echo "deb http://ftp.us.debian.org/debian sid main" > /etc/apt/sources.list.d/buster.list
apt-get update && apt-get install -f -y openjdk-8-jdk-headless openjdk-8-dbg