2014-09-07 5 views
9

Я пытаюсь использовать команду jmap на моем сервере CentOS, но он продолжает говорить мне, что команда не найдена, даже если у меня установлен JDK.Команда jmap не найден

Вот вывод команды 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) 

Как я могу решить эту проблему?

+1

вы можете найти jmap с помощью «найти jmap» ?? –

ответ

0

Путь java должен находиться в системном представлении «PATH».

$JAVA_HOME/bin 
0

OpenJDK on centos не включает утилиту jmap. проверить на другой платформе или использовать команду jhat java_pid1234.hprof для проверки дампа после факта на другой платформе.

jhat может медленно работать на больших дампах и даже исчерпать память! Я использую jhat -port 7000 -J-mx2048m java_pid1234.hprof, поэтому вам понадобится много барана на вашем компьютере.

7

Вы должны быть в состоянии найти jmap в Java-1.8.0-OpenJDK-разви-отладки или Java-1.7.0-OpenJDK-Devel-отлаживать или Java-1.6. 0-openjdk-devel-debug пакеты на Redhat/Centos. Чтобы установить его, выполните следующие действия в качестве корня:

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 
2

после работы для меня:

sudo apt-get install openjdk-8-jdk openjdk-8-dbg

1

Моя ситуация была немного странно (работает внутри openjdk:8-jre Докер изображения), но эта комбинация работала

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 
+0

Такая же ситуация и ваши команды работали. Но я не могу найти jmap в любом месте машины, после установки. Определенно не в каталогах bin/jre bin для любой из установок. – user3562927

+0

Если команда 'jmap' работает, вы можете попробовать« какой jmap »получить путь к двоичному. – turtlemonvh

Смежные вопросы