0

我正在使用安装在 /usr/lib/jvm/jdk1.6.0_32 目录中的 sun-jdk。即使我可以在其 bin 文件夹中看到 javah 文件,我也无法执行 javah 命令。每次我执行 javah 时,我都会收到来自系统的以下响应:-

程序“javah”可以在以下包中找到:

  • gcj-4.6-jdk
  • openjdk-6-jdk
  • gcj-4.5-jdk
  • openjdk-7-jdk** 试试:apt-get install

请建议我采取一些措施来处理这个问题。提前致谢

4

4 回答 4

2

你有没有设置过Java的环境?这是我在 /etc/profile 中的 JDK 设置:

export JAVA_HOME=_YOUR_JDK_DIRECTORY
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
于 2012-09-20T11:12:00.593 回答
1

这是简单的路径问题,当您执行 javah 命令时,它试图从 ubuntu 的默认 java 执行命令,

按照这个步骤,

  • 转到 usr/bin 文件夹
  • 搜索类似此图像的 java 图标

别的

打开终端并输入“whereis java”,它将为您提供 jdk 文件夹的正确路径。

在此处输入图像描述

  • 右键单击它,然后选择cut,转到桌面和paste它。
  • 完毕。
于 2012-09-20T11:09:24.353 回答
0

添加$JAVA_HOME/bin到您的PATH. 如果您已经拥有一个 ,最好在开始时使用/usr/bin/java,否则随 Ubuntu 安装的那个(可能是一个 JRE)可能会影响您想要使用的那个。


检查你的PATH

$ echo $PATH

检查看到了哪些可执行文件:

$ which java
$ which javac
于 2012-09-20T11:30:50.103 回答
0

尝试用root在终端中输入这个

update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_32/bin/javac 1

update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_32/bin/java 1

update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.6.0_32/bin/javaws 1

update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.6.0_32/bin/jar 1

于 2012-09-20T11:28:22.750 回答