Hadoop:无法使用Jps命令

sak*_*ket 13 java hadoop

问题是

  hduser@saket-K53SM:/usr/local/hadoop$ jps
  The program 'jps' can be found in the following packages:
  * openjdk-6-jdk
  * openjdk-7-jdk
 Try: sudo apt-get install <selected package>
Run Code Online (Sandbox Code Playgroud)

我的配置是

hduser@saket-K53SM:/usr/local/hadoop$ java -version
java version "1.6.0_33"
Java(TM) SE Runtime Environment (build 1.6.0_33-b04)
Java HotSpot(TM) 64-Bit Server VM (build 20.8-b03, mixed mode)
Run Code Online (Sandbox Code Playgroud)

设置conf/hadoop-env.sh

hduser@saket-K53SM:/usr/local/hadoop$ cat conf/hadoop-env.sh | grep JAVA_HOME
# The only required environment variable is JAVA_HOME.  All others are
# set JAVA_HOME in this file, so that it is correctly defined on
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_33/
Run Code Online (Sandbox Code Playgroud)

我知道有一个问题(http://stackoverflow.com/questions/7843422/hadoop-jps-can-not-find-java-installed)与此类似.但是我在这里安装了Sun jdk.所以任何帮助将不胜感激..

Tho*_*lut 20

这实际上不是Hadoop问题.Hadoop不使用JPS.

如果找不到JPS,则必须将其放入路径或创建别名.可以在下面找到JPS可执行文件$JAVA_HOME/bin/jps.

别名例如可以是:

alias jps='/usr/lib/jvm/jdk1.6.0_33/bin/jps'
Run Code Online (Sandbox Code Playgroud)

或者如果你不关心使用JPS,你可以做一个

ps aux | grep java
Run Code Online (Sandbox Code Playgroud)

这将约.给你相同的结果;)


sha*_*zhu 9

你安装了提供jps工具的java-1.6.0-openjdk-devel软件包吗?

$ sudo yum provides /usr/lib/jvm/java-1.6.0-openjdk.x86_64/bin/jps
Loaded plugins: product-id, subscription-manager
Updating certificate-based repositories.
Unable to read consumer identity
1:java-1.6.0-openjdk-devel-1.6.0.0-1.45.1.11.1.el6.x86_64 : OpenJDK Development Environment
Repo        : installed
Matched from:
Other       : Provides-match: /usr/lib/jvm/java-1.6.0-openjdk.x86_64/bin/jps
Run Code Online (Sandbox Code Playgroud)


小智 8

如果您不能使用jps,请使用此命令

ps -aux | grep java | awk '{print $12}'

它会将文件显示为:

在图片中显示这样的文件


Anw*_*war 6

由于您已从Oracle安装JDK(可能是),因此导致此问题.您可以通过使用update-alternatives程序链接jps到标准路径目录来解决此问题.使用此命令在终端中修复此问题

 sudo update-alternatives --install /usr/bin/jps jps /usr/lib/jvm/jdk1.6/bin/jps 1
Run Code Online (Sandbox Code Playgroud)

jps在相应的jdk(您的jdk版本)中使用实际的程序路径,而不是jdk1.6特定于我的.希望这会有所帮助.