您的位置:首页 > 编程语言 > Java开发

解决Ubuntu中root权限下无法运行Java相关命令的问题

2012-12-21 13:12 627 查看
Tip: 近来编译展讯Android代码,因为编译要求root权限,可是很多时候在root下就无法使用java、javac等相关命令,导致编译无法通过

原因:root运行java都是 /usr/bin/java这个引用,由于ubuntu中可能会引用默认的JDK,如openjdk,所以我们是否安装JDK对它完全没有影响

解决办法:手动替换默认的Jdk版本

执行代码:

sudo update-alternatives --config java

系统会列出各种JDK版本,如下所示:

有 3 个候选项可用于替换 java (提供 /usr/bin/java)。

选择 路径 优先级 状态

------------------------------------------------------------

* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 自动模式

1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 手动模式

2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 手动模式

3 /usr/lib/jvm/java-7-sun/bin/java 300 手动模式

要维持当前值[*]请按回车键,或者键入选择的编号:3

update-alternatives: 使用 /usr/lib/jvm/java-7-sun/bin/java 来提供 /usr/bin/java (java),于 手动模式 中。

亦可直接更改,如:

sudo update-alternatives --install /usr/bin/java java/usr/share/java/jdk1.6.0_37/bin//java 300

sudo update-alternatives --install /usr/bin/javac javac/usr/share/java/jdk1.6.0_37/bin/javac 300

sudo update-alternatives --install /usr/bin/javah javah /usr/share/java/jdk1.6.0_37/bin/javah 300

sudo update-alternatives --install /usr/bin/javadoc javadoc /usr/share/java/jdk1.6.0_37/bin/javadoc 300

上面=“/usr/share/java/jdk1.6.0_37/bin/”为你安装Jdk的bin路径
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐