6

我最近在 Manjaro Linux 上安装了 Android Studio,但每次我必须从头开始运行应用程序时都会遇到问题。也就是说,为了启动应用程序,我必须以 root 身份登录,然后我必须验证 JAVA_HOME 环境变量,最后使用 ./studio.sh 启动应用程序

这是完整的代码:

[nikodroid@manjaro ~]$ cd /usr/share/applications/android-studio/bin
bash: cd: /usr/share/applications/android-studio/bin: Permission denied
[nikodroid@manjaro ~]$ sudo su
[sudo] password for nikodroid: 
[root@manjaro nikodroid]# cd /usr/share/applications/android-studio/bin
[root@manjaro bin]# ./studio.sh 
which: no java in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/bin/vendor_perl:/usr/bin/core_perl)
ERROR: Cannot start Android Studio\nNo JDK found. Please validate either STUDIO_JDK, JDK_HOME or JAVA_HOME environment variable points to valid JDK installation.
[root@manjaro bin]# cd /usr/java/
[root@manjaro java]# export JAVA_HOME=/usr/java/jdk1.7.0_21/
[root@manjaro java]# export PATH=$PATH:$JAVA_HOME/bin
[root@manjaro java]# cd /usr/share/applications/android-studio/bin/
[root@manjaro bin]# ./studio.sh

因此,显然这仅在我保持终端会话时运行,一旦我退出,应用程序将停止工作。我的问题是,我该怎么做才能不每次我想运行应用程序时都这样做?

顺便提一下,我放了以下行

JAVA_HOME=/usr/java/jdk1.7.0_21/

在 /etc/environment/ 中以保留此环境变量,但似乎它不起作用。

谢谢!

4

4 回答 4

9

这确实是一个权限问题,因为我查看并发现所有者和组搞砸了,所以我所做的是更改权限/所有权:

chown -R root:root android-studio

在此之后,我只是将目录更改为:

cd /usr/share/applications/android-studio/bin

跑了

./studio.sh

它加载了应用程序,没有任何错误。

于 2013-05-19T09:31:32.003 回答
3

使用 apt 安装 JRE 和 JDK

对于 JRE:sudo apt-get install default-jre 对于 JDK:sudo apt-get install default-jdk

检查是否一切正常:java -version

然后继续安装Android Studio

于 2015-12-11T15:35:23.527 回答
1

解决了类似的问题(但在 Windows 中)

添加一个值为 c:\Program Files\Java\jdk1.7.0_21\ 的系统变量 JDK_HOME

因此,尝试添加:

JDK_HOME=/usr/java/jdk1.7.0_21/

到您的 /etc/environment(以及保留 JAVA_HOME)。


更新:

尝试修复“/usr/share/applications/android-studio/bin”和“./studio.sh”的权限。

于 2013-05-18T23:11:24.993 回答
0

确保内容

/usr/share/applications/android-studio/bin

可执行(目录也是如此)。(可能是组users)。然后确保您的用户在该组中。

于 2015-10-05T15:52:53.683 回答