Android Studioの更新中に、次のエラーが発生しました。パッチがダウンロードされて抽出されましたが、との競合がありましたjre/bin/java Access denied
。エラーメッセージは、次のスクリーンショットに示されています。
/opt/android-studio
chown
edとしてAndroid Studioをインストールしましたroot
。更新したら、実行sudo su
してから/opt/android-studio/bin/studio.sh
。
Android Studioの更新中に、次のエラーが発生しました。パッチがダウンロードされて抽出されましたが、との競合がありましたjre/bin/java Access denied
。エラーメッセージは、次のスクリーンショットに示されています。
/opt/android-studio
chown
edとしてAndroid Studioをインストールしましたroot
。更新したら、実行sudo su
してから/opt/android-studio/bin/studio.sh
。
回答:
更新のためにJavaを強制終了する
ps -A |grep java
このコマンドの出力は、システムで実行されているJavaプロセスのリストを提供します。強制終了して実行するプロセスのプロセスID(PID)を書き留めます。
kill -9 PID
ps -a
代わりに使用していたps -A
。
私が働いていたのは、Android Studioを実行して(更新パッチのダウンロードを開始する前に)ps -ef|grep jre
コマンドラインで実行し、2つのjreプロセスが実行されていることを確認しました.1つはAndroid Studio用で、もう1つはGradleデーモン用でしたAndroid Studioに同梱されているjreも使用します。Gradleデーモンプロセスには次のようなものがあります。
gradle-5.3.1/lib/gradle-launcher-5.3.1.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 5.3.1
ps
もちろん、特定のバージョンは5.3.1ではないかもしれませんが、プロセスを一覧表示するときに、コマンドラインの最後に向かっています。
Gradleプロセスを強制終了し、更新のダウンロードを開始してからAndroid Studio内から再起動すると、更新が正常に進行します。
JetBrains ToolboxアプリによってインストールされたAndroid Studioを更新しようとしたときに、同じ問題が発生しました。この場合、更新はIDEからではなく、ツールボックスを介して実行する必要があります。
上記の答えはどれも私にとって問題を解決しませんでした。私がやることは、プロジェクト構造からデフォルトのjdkを変更することです。
更新する前 に[ファイル]-> [プロジェクト構造]-> [SDKの場所]に移動します。次に、マシンにすでにインストールされているはずのOpenJDKまたはOracle JDKに場所を変更します。その後、Android Studioを更新すると、すべてがうまくいくはずです(願わくは... Googleが開発者をどう扱うか;))
とても簡単な問題です。
あなたがしなければならないことは-AndroidのインストールフォルダにあるJavaの名前のファイルに移動し(/opt/android_studio/jre/jre/bin/java
またはである可能性があります[the folder you extracted the android tar file to]/jre/jre/bin/java
)、許可を設定します- 読み取りと書き込み。
これで再び更新できます。
type -p java
ターミナルでは、javaへのパスが表示されます。またはlocate java
、名前にjavaが含まれるすべてのファイルを表示します。