OSバージョン:Ubuntu 14.04 LTE 64ビット
Java JRE/JDKバージョン:Oracle JDK 1.8.0_11
プロジェクトディレクトリはNTFSベースのドライブにあります。
プロジェクトをきれいにしようとするたびに、次のようなものが表示されます。
:app:clean FAILEDエラー:タスク ':app:clean'の実行に失敗しました。
ファイルを削除できません:/media/DriveA/AndroidStudioWorkspace/DNA/app/build/intermediates/classes/debug/.../mechandising/MerchandizingActivity$3.class
ビルドフォルダを手動で削除しようとすると、次のエラーが表示されます。
ファイル '/ media/DriveA/AndroidStudioWorkspace/DNA/app/build/intermediates/pre-dexed'の情報を取得する際のエラー:入出力エラー
Linuxの問題なのか、Studioの問題なのかわかりません。私はEclipse(同じドライブ)でそのような問題に直面していないので、私はそれが私のスタジオで何か間違っていると考えています。
助言がありますか??
同じ問題がありました。
ソースファイルに直接移動する必要があります。スタジオを閉じて、問題のあるパスに移動し、そこにあるフォルダーを削除します。
に行く
[ファイル]> [設定]> [ビルド、実行、展開]> [インスタントラン]> [このチェックボックスをオフにします(コードをホットスワップするインスタントランを有効にする)]
ありがとう、素敵なコーディング
プロジェクトディレクトリに移動し、コマンドラインからgradleを呼び出してプロジェクトをクリーンアップできます。
gradlew clean
プロジェクトを再度開くと、Gradle Syncを再度実行する必要があります。
ちょうど今同じ問題に出くわしました-生成されたファイルの1つを誤って編集してアプリを再構築したいのですが、いくつかのファイルがロックされているためclean
とbuild
の両方が失敗しました。
幸いなことに、Windowsマシンでcygwin
を取得したので、ls -l <file that studio complained about>
は、これらのファイルがいくつかのAdministrator
男に所有されていることを明らかにしました。
最初に考えたのは、Studioが管理者権限で実行されている間にこれらのファイルが作成された可能性があるということです(SDK manager
)。管理者権限で実行しているStudioでclean
を実行してこの問題を解決し、後で通常の権限で再構築するというアイデアでした。いいえ、これは機能しませんでした:(
私はブルートフォースに行くことにしました:Sudo rm -rf app/build/*
(Cygwin
では、このコマンドは少し異なります:cygstart --action=runas rm -rf app/build/*
)。これで問題は解決し、Android Studioでプロジェクトを再構築できました。
Linuxでは、locked
ディレクトリがあり、Android Studioがファイルを削除できない場合に発生する可能性があります。
ターミナルで次のコマンドを実行できます。
Sudo chown -R $USER: $HOME
その後、再構築してみてください-> Works for me
スキャンする必要があるためファイルをロックしていたWindows Defenderを停止し、問題は解決しました
私はあなたと同じ問題を抱えていました。このページで提案された解決策のいくつかを試しましたが、うまくいきませんでした。そこで私は Process Explorer を使用して、apkファイルをロックしているプロセスを見つけました。それはfirefoxでした。 Google Playコンソールでapkをアップロードすると、ファイルがロックされたままになると思います。それを行うには、「検索>ハンドルまたはDLLの検索...> path-to-your-app.apk」に進みます。お役に立てば幸いです
同じ問題がありました。プロジェクトを何度もビルドするには、毎回ビルドフォルダーを削除する必要がありました。私にとっての問題は、システムで実行されているByteFence.exeと呼ばれる匿名プログラムでした。そのプログラムをアンインストールすると、問題は解決しました。
上記の答えはどれも私にとってはうまくいきませんでしたが、変更の許可は働きます:
chown user:staff ../project_dir
find ../project_dir -type d -exec chmod 775 {} \;
find ../project_dir -type f -exec chmod 664 {} \;
最初のAndroidアプリをデバッグしようとしたときに、同様の問題が発生しました。 WindowsでAndroid Studioを実行している場合、Android studioを再起動しただけで、Android Studioを管理者として実行して問題を修正しました。
ターミナルのプロジェクトディレクトリに移動して、gradlew clean
端末/コマンドプロンプトでGradleコマンドを実行するには。プロジェクトのルートに移動し、ターミナルでgradlew
と入力するか、gradlew.bat
コマンドプロンプト(Windowsユーザー)の後に、実行するコマンドが続きます。
可能なすべてのgradleコマンドのリストについては、gradlew tasks
端末に。
これで問題が解決しました。
Galの回答に感謝します( https://stackoverflow.com/a/39904628/2870404 )。
Windowsでは、Windowsファイルエクスプローラーを使用して、
ディレクトリを右クリックして、表示されるコンテキストメニューのプロパティをクリックし、[読み取り専用]属性のチェックを外します。その後、「適用」をクリックして変更を適用します。
Galの回答のおかげです( https://stackoverflow.com/a/39904628/2870404 )。
Windowsでは、Windowsファイルエクスプローラーを使用して、
ファイルハンドルをロックするプロセスである必要があります。タスクマネージャを開いてプロセスを強制終了できます。私の場合、プロセスはJava process hold by Android Studio OpenJDK。それを見つけて強制終了します。
Android studio-> remove Android platform by cliで-> add the Android platform再度-> Android studio。
私はWindowsではなく、OS Xです。どういうわけか、ビルドフォルダーにASがファイルを削除するための適切な権限がなかったため、chmod -R 777 <your_directory>
影響を受けた親ディレクトリで..おそらく777はあなたが望むものではありませんが、それは私のために働いた。
/release/app.aabのロックに問題があるため、このスレッドにアクセスしました。これにより、プロジェクトのクリーンアップと署名済みバンドルの生成ができませんでした。私の回避策は、問題を解決するまでコンピューターを再起動して権限を取得することでした。
Gitがapp.aabをロックしており、私がしなければならなかったのは、/ app/.gitignoreに「/ release」を追加することだけでした。
これが誰かを助けることを願っています。