私は自分のAndroid Studio Gradleプロジェクト(ほとんどの場合Kotlinコードを含む)を再構築しようとしていますが、クリーニング/再構築プロセス中にUnableToDeleteFileException
がスローされ始めました。
Execution failed for task ':app:clean'.
> Unable to delete file: C:\Users\User\KotlinGameEngine\app\build\intermediates\exploded-aar\com.Android.support\appcompat-v7\23.0.1\jars\classes.jar
これは、プロジェクトのパッケージ構造を変更しようとした後に起こりました。残念ながら、私はAndroid Studioを介してリファクタリングするのではなく、ソースフォルダの名前を変更して移動することでそれを行いました。これは悪い考えでした。
私は一日中この問題の解決策を探してきました、そしてこれらは私が無駄にしようとしたことです:
gradle
ディレクトリと.gradle
ディレクトリを削除します。.gradle
ディレクトリを削除します。gradlew clean
を実行します。私は少し成功してみましたが、エラーが再度発生する前に、もう1回クリーンに実行して再構築してください。
Java.exe
プロセスを強制終了する(これは技術的に毎回行うことができますが、面倒でビルドプロセスが遅くなります)そのため、Javaプロセスをコンパイルすると何らかの理由でビルドファイルがロックされる可能性がありますが、Kotlinと関係がある可能性もあります。クリーニング中にこのエラーを再現することはできませんが、私は現在取り組んでいる(より成熟した)Java Androidプロジェクトを持っています。それは私のKotlinプロジェクトにだけ起こるようです。
私は問題がKotlinのAndroidプラグインによって引き起こされていることがわかりました。モジュールのapply plugin: 'kotlin-Android'
ファイルからbuild.gradle
を削除すると問題は解決し、再度挿入すると元に戻ります。これについての洞察力を提供すること自由に感じなさい。
最後のアップデートは原因ではありません。プロジェクトにKotlinファイルが含まれていると、再構築とクリーニングが失敗することがわかりました。すべてのKotlinファイルが削除されても、バックグラウンドのJavaプロセスが終了するまで失敗し続けます。つまり、ビルドファイルに何らかのロックがかかります。私はバグを再現するためのより詳細なステップとステップと共にここにバグを提出しました: KT-9440
Kotlinバグトラッカーにバグレポートを投稿した後、AOSPトラッカーで Issue 61300 の通知を受けました。それが原因のようです。現時点では私にできることは何もないので、この質問に回答済みのマークを付け、バグが修正されたら回答を更新します。
それまでの間、Windowsを実行しているのであれば、回避策が見つかったと思います。 LockHunter をダウンロードする必要があります(もちろん、あなた自身の責任で)、それからlockhunter
変数をLockHunter.exeへのパスに置き換えて、あなたのモジュールのgradle.build
ファイルに以下を追加してください:
task clean(type: Exec) {
ext.lockhunter = '\"C:\\LockHunter.exe\"'
def buildDir = file(new File("build"))
commandLine 'cmd', "$lockhunter", '/delete', '/silent', buildDir
}
これにより、app:cleanタスクが実行されたときに、LockHunterが強制的かつ暗黙的にビルドファイルのロックを解除して削除します。
Android Studio 2.0 Betaを使用している場合、この問題が発生する可能性があり(NTFSファイルシステムで作業している場合)、 "Instant Run"が原因のようです。設定で「即時実行」を検索し、チェックボックスをオフにします。
私はバグトラッカーに issue を提出しました。
タスクマネージャですべてのJava TMプロセスを強制終了したので、再構築できます
ファイルを試す - >キャッシュを無効にして再起動する
これは私のために働きました
ディレクトリintermediates
を削除すると、問題がすぐに解決します。
プロジェクトが再構築されると、ディレクトリも再構築されます。
私はAndroid Studio 2.3でこの問題を抱えていました。
私は単にAndroid Studioを再起動し、その後私は文句なしにきれいにすることができました。
私はAndroid Studio 2.2プレビュー1で同じ問題に直面していました、@ AndresSuarezによる解決策は正しかったですが、いくつかの理由で私は私のタスクマネージャでJava TMプロセスを見つけることができませんでした。だから私は次の解決策を試してみました、それはうまくいきました -
コマンドプロンプト を開き、TASKKILL /F /IM Java.exe
と入力します。これにより、すべてのJava TMプロセスが自動的に強制終了されます。もう一度アプリをコンパイルし直してください。
また、 .bat ファイルを作成し、その中に上記のコードを追加して、問題に直面するたびに実行することもできます。
私にとっては、これは アクティブなデバッグプロセスのために起こりました 。そのため、クリーンアップまたは再構築する前に、アクティブなプロセスをすべて強制終了してください。成功を確定するには キャッシュの無効化/再起動 を実行します。
ときどき仲介者が問題を起こすので、それを削除してプロジェクトを再構築する
OR
単にcmdコマンドを実行する - > gradlew clean
作業スペースのあなたのプロジェクトフォルダに(私のためにその仕事)
app/build/output/apk フォルダーを使用したプログラムを見つけて、フォルダーを削除してください。
私はAndroid Studioが再構築する前に古いapkフォルダを削除しなければならないと思います。
私にとっては、Exit Android Studio
をもう一度クリックしてClean Project
をクリックし(同じエラーが表示されます)、次にMake Project
をクリックします - もちろん、その後Android StudioのRun 'app'
ボタンをクリックしてください。
私はこのように私のUbuntuでこれを解決しました。
Windowsのタスクマネージャのようにあなたのシステム(Ubuntu)で走っているプロセスをチェックしてください。
実行中の全プロセスを一覧表示するUbuntu端末コマンド----> "gnome-system-monitor"
リスト内のJavaプロセスとAndroidプロセスを終了または終了します。
問題なく動作します。お役に立てれば...
これはすでに作成されて複製されているプロセスの問題だと思いました。
解決策は非常に簡単です。
これは私のために働いた解決策の一つです。
プロジェクトの app/build/output/apk フォルダが開かれている可能性があります。
このフォルダを閉じて、プロジェクトを再構築してください。そしてそれは解決されるでしょう。
私は同じ問題を抱えていて、これは私のために働きました:
バグ報告で示唆されたように 、行のコメントを外して
idea.jars.nocopy=false
idea.properties
ファイルに私のために問題を解決しました。
これはAndroid Studioが更新されるたびに行われる必要があることに注意してください。
私は同じエラーがあった、複数の方法を試してみましたが私のために働いた解決策は/ Androidと/ Android/appディレクトリからビルドフォルダを削除することでした。
実行react-native run-Android
は私のために働いた。
私にとっては、犯人は adb をapkファイルに保持しているので、コマンドラインを使用して物理デバイスにアプリケーションをインストールして起動します。
だから単純に:
タスクマネージャ>プロセスの終了 adb.exe
そして、ファイルは自由に削除され、プロジェクトはきれいにされるかもしれません
私はコマンドで解決しました:
taskkill /F /IM Java.exe
その後:
gradle assembleDebug
この問題を自分で解決しました。
問題は、他の誰かがファイルを作成したため、コンピューターの管理者権限を持っているにもかかわらず、ファイルを変更できないことでした。ファイルまたはフォルダーのプロパティに移動して、所有権を変更するか、所有権を追加する必要があります。 このWebページ では、必要な手順を順を追って説明しています。
上記を実行した後、ファイルエクスプローラーでファイルを見つけ、手動で抽出しました。とにかく削除しようとしていた場合、Android studioプロジェクトでは必要ないと思います。
ローカルバックエンド(ローカルGoogleアプリエンジン上のJavaサーブレット)でテストしている場合、実行中のプロセスはいくつかのファイルをブロックします。だからあなたはライブデプロイすることはできません。そのため、この場合はcleanまたはbuildを開始する前にローカルバックエンドを停止することでこれを解決できます。あなたは "Run - > Stop backend"の下にオプションを見つける。
Androidスタジオでプロジェクトをクリーンにして再度実行すると問題が解決しました。 "Make Project"をすることもできます。
簡単な解決策:
あなたがクリックしたときにあなたがそれをクリックすると、「キャッシュを無効にして再起動する」ことがわかり、すべての問題は解決されます
私は同じ問題を抱えており、プロジェクトフォルダをext4パーティションに移動することでそれを解決しました
プロジェクトをD:からG:ドライブに移動した後も同じ問題が発生しましたが、ディスクチェックで問題が解決しました
chkdsk/f/r/x Gを使用しました。 **ここではコマンドラインスイッチをいくつか使用しました。**
/ Fディスク上のエラーを修正します
/ R不良セクタを特定し、読み取り可能な情報を回復します(/ Fを意味します)。
/ X必要に応じてボリュームを最初にマウント解除します(/ Fを含みます)(重要)
注:/ Xはドライブをマウント解除し、プロジェクトの build ディレクトリを手動で削除できるので重要です。
今プロジェクトを再構築
私の場合、node.js
はbuildフォルダー内のリソースをいくつか使用していました(私のアプリはreactnative
)。だから私はnode.js
を殺してそれは解決した。
私はプロジェクト内で見つからないディレクトリをグローバルに検索することで解決しました。そのキーワードを含むファイルをすべて削除します。手動ですべてのbuild
ディレクトリと.externalNativeBuild
ディレクトリを削除した後は、正常にクリーニングできます。
私はAndroid Studio 3.0 Beta 7を使用しています。プロジェクトのクリーン、キャッシュの無効化、Studioの再起動が機能しませんでしたが、Kotlinのバージョンを1.1.51に更新してStudioを再起動すると問題が解決しました。
それでも問題が解決しない場合は、最新バージョンのAndroid Studio(現在の2.1)にアップデートしてください。古いバージョンのAndroid Studioのバグである可能性があります。それは私のために今解決しました。
Android Studio 3.0では、同じ問題がありました。これはそれを修正しました:
これに対する私の解決策は非常に簡単でした(あなたがWindowsを使っているなら)。 1 - Android Studioを閉じます。 2 - 管理者としてAndroid Studioを起動します。 3-それはそれです。
私のために働いていたのはビジュアルスタジオコードを閉じてそれを再び開くことでした...私はapkフォルダがコード内のどこかで開かれたと思います....だからちょうどそれはあなたのために働くかもしれません。
この問題は、Android Studio 2.0の安定版チャンネルで見られ、私のAndroid Studioのアップデート中に発生した問題が原因で、新しいAndroid Studioをインストールすることで解決しました。古いインストールの古いファイルをすべて削除した後。そしてインスタントランの非常に素晴らしい機能を維持するために