web-dev-qa-db-ja.com

エラー:タスク ':app:clean'の実行に失敗しました。ファイルを削除できません

私は自分の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を同期します。
  • Java JREとJava SDKを再インストールします。
  • 最新バージョンのAndroid Studio(1.4)を再インストールします。
  • 以前のASバージョン(1.3)にロールバックします。
  • ASキャッシュを無効にして再起動します。
  • プロジェクトディレクトリのgradleディレクトリと.gradleディレクトリを削除します。
  • 私のユーザーディレクトリの.gradleディレクトリを削除します。
  • AS端末からgradlew cleanを実行します。
  • 手動でソースを新しいプロジェクトにコピーする(プロジェクト間で何とかしてそれが持続するのはおかしい…)

私は少し成功してみましたが、エラーが再度発生する前に、もう1回クリーンに実行して再構築してください。

  • ASを閉じて、手動でビルドファイルを削除して、もう一度開きます。
  • ASの実行中にJava.exeプロセスを強制終了する(これは技術的に毎回行うことができますが、面倒でビルドプロセスが遅くなります)

そのため、Javaプロセスをコンパイルすると何らかの理由でビルドファイルがロックされる可能性がありますが、Kotlinと関係がある可能性もあります。クリーニング中にこのエラーを再現することはできませんが、私は現在取り組んでいる(より成熟した)Java Androidプロジェクトを持っています。それは私のKotlinプロジェクトにだけ起こるようです。

更新:

私は問題がKotlinのAndroidプラグインによって引き起こされていることがわかりました。モジュールのapply plugin: 'kotlin-Android'ファイルからbuild.gradleを削除すると問題は解決し、再度挿入すると元に戻ります。これについての洞察力を提供すること自由に感じなさい。

更新2:

最後のアップデートは原因ではありません。プロジェクトにKotlinファイルが含まれていると、再構築とクリーニングが失敗することがわかりました。すべてのKotlinファイルが削除されても、バックグラウンドのJavaプロセスが終了するまで失敗し続けます。つまり、ビルドファイルに何らかのロックがかかります。私はバグを再現するためのより詳細なステップとステップと共にここにバグを提出しました: KT-9440

139
Bryony

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が強制的かつ暗黙的にビルドファイルのロックを解除して削除します。

25
Bryony

Android Studio 2.0 Betaを使用している場合、この問題が発生する可能性があり(NTFSファイルシステムで作業している場合)、 "Instant Run"が原因のようです。設定で「即時実行」を検索し、チェックボックスをオフにします。

私はバグトラッカーに issue を提出しました。

119
Irfan

タスクマネージャですべてのJava TMプロセスを強制終了したので、再構築できます

95
Andres Suarez

ファイルを試す - >キャッシュを無効にして再起動する

これは私のために働きました

31
Cloy

このコマンドgradlew cleanを使用してターミナルからプロジェクトを消去します。

enter image description here

19

ディレクトリintermediatesを削除すると、問題がすぐに解決します。

プロジェクトが再構築されると、ディレクトリも再構築されます。

12
DeaMon1

私はAndroid Studio 2.3でこの問題を抱えていました。

私は単にAndroid Studioを再起動し、その後私は文句なしにきれいにすることができました。

4
Johan Lund

私はAndroid Studio 2.2プレビュー1で同じ問題に直面していました、@ AndresSuarezによる解決策は正しかったですが、いくつかの理由で私は私のタスクマネージャでJava TMプロセスを見つけることができませんでした。だから私は次の解決策を試してみました、それはうまくいきました -

コマンドプロンプト を開き、TASKKILL /F /IM Java.exeと入力します。これにより、すべてのJava TMプロセスが自動的に強制終了されます。もう一度アプリをコンパイルし直してください。

また、 .bat ファイルを作成し、その中に上記のコードを追加して、問題に直面するたびに実行することもできます。

4
Rohan Kandwal

私にとっては、これは アクティブなデバッグプロセスのために起こりました 。そのため、クリーンアップまたは再構築する前に、アクティブなプロセスをすべて強制終了してください。成功を確定するには キャッシュの無効化/再起動 を実行します。

3

ときどき仲介者が問題を起こすので、それを削除してプロジェクトを再構築する

OR

単にcmdコマンドを実行する - > gradlew clean

作業スペースのあなたのプロジェクトフォルダに(私のためにその仕事)

3
Chetan Joshi

app/build/output/apk フォルダーを使用したプログラムを見つけて、フォルダーを削除してください。

私はAndroid Studioが再構築する前に古いapkフォルダを削除しなければならないと思います。

3
Mete

私にとっては、Exit Android Studioをもう一度クリックしてClean Projectをクリックし(同じエラーが表示されます)、次にMake Projectをクリックします - もちろん、その後Android StudioのRun 'app'ボタンをクリックしてください。

3
y07k2

私はこのように私のUbuntuでこれを解決しました。

  1. Windowsのタスクマネージャのようにあなたのシステム(Ubuntu)で走っているプロセスをチェックしてください。

    実行中の全プロセスを一覧表示するUbuntu端末コマンド----> "gnome-system-monitor"

  2. リスト内のJavaプロセスとAndroidプロセスを終了または終了します。

  3. もう一度スタジオを起動してプロジェクトをインポートします。

問題なく動作します。お役に立てれば...

これはすでに作成されて複製されているプロセスの問題だと思いました。

2
HariPrasad

解決策は非常に簡単です。

これは私のために働いた解決策の一つです。

プロジェクトの app/build/output/apk フォルダが開かれている可能性があります。

このフォルダを閉じて、プロジェクトを再構築してください。そしてそれは解決されるでしょう。

2
Mehul

私は同じ問題を抱えていて、これは私のために働きました:

  1. android Studioを閉じます。
  2. 中間ディレクトリを削除(Android Studioが開いている限り、このディレクトリは削除できません)
  3. android Studioをもう一度開く
2
M. Chavoshi

バグ報告で示唆されたように 、行のコメントを外して

idea.jars.nocopy=false

idea.propertiesファイルに私のために問題を解決しました。

これはAndroid Studioが更新されるたびに行われる必要があることに注意してください。

2
Jose Gómez

私は同じエラーがあった、複数の方法を試してみましたが私のために働いた解決策は/ Androidと/ Android/appディレクトリからビルドフォルダを削除することでした。

実行react-native run-Androidは私のために働いた。

1
Eltaf

私にとっては、犯人は adb をapkファイルに保持しているので、コマンドラインを使用して物理デバイスにアプリケーションをインストールして起動します。

だから単純に:

タスクマネージャ>プロセスの終了 adb.exe

そして、ファイルは自由に削除され、プロジェクトはきれいにされるかもしれません

1
benallansmith

私はコマンドで解決しました:

taskkill /F /IM Java.exe

その後:

gradle assembleDebug 
1
Rick

この問題を自分で解決しました。

問題は、他の誰かがファイルを作成したため、コンピューターの管理者権限を持っているにもかかわらず、ファイルを変更できないことでした。ファイルまたはフォルダーのプロパティに移動して、所有権を変更するか、所有権を追加する必要があります。 このWebページ では、必要な手順を順を追って説明しています。

上記を実行した後、ファイルエクスプローラーでファイルを見つけ、手動で抽出しました。とにかく削除しようとしていた場合、Android studioプロジェクトでは必要ないと思います。

1
Adam Higgins

ローカルバックエンド(ローカルGoogleアプリエンジン上のJavaサーブレット)でテストしている場合、実行中のプロセスはいくつかのファイルをブロックします。だからあなたはライブデプロイすることはできません。そのため、この場合はcleanまたはbuildを開始する前にローカルバックエンドを停止することでこれを解決できます。あなたは "Run - > Stop backend"の下にオプションを見つける。

1
Tino

Androidスタジオでプロジェクトをクリーンにして再度実行すると問題が解決しました。 "Make Project"をすることもできます。

0
sofs1

簡単な解決策:

あなたがクリックしたときにあなたがそれをクリックすると、「キャッシュを無効にして再起動する」ことがわかり、すべての問題は解決されます

0
Farouk Benarous

私は同じ問題を抱えており、プロジェクトフォルダをext4パーティションに移動することでそれを解決しました

0

プロジェクトをD:からG:ドライブに移動した後も同じ問題が発生しましたが、ディスクチェックで問題が解決しました

chkdsk/f/r/x Gを使用しました。 **ここではコマンドラインスイッチをいくつか使用しました。**

/ Fディスク上のエラーを修正します

/ R不良セクタを特定し、読み取り可能な情報を回復します(/ Fを意味します)。

/ X必要に応じてボリュームを最初にマウント解除します(/ Fを含みます)(重要)

注:/ Xはドライブをマウント解除し、プロジェクトの build ディレクトリを手動で削除できるので重要です。

今プロジェクトを再構築

私の場合、node.jsはbuildフォルダー内のリソースをいくつか使用していました(私のアプリはreactnative)。だから私はnode.jsを殺してそれは解決した。

0
RAM

私はプロジェクト内で見つからないディレクトリをグローバルに検索することで解決しました。そのキーワードを含むファイルをすべて削除します。手動ですべてのbuildディレクトリと.externalNativeBuildディレクトリを削除した後は、正常にクリーニングできます。

0
wdanxna

私はAndroid Studio 3.0 Beta 7を使用しています。プロジェクトのクリーン、キャッシュの無効化、Studioの再起動が機能しませんでしたが、Kotlinのバージョンを1.1.51に更新してStudioを再起動すると問題が解決しました。

0
adithya reddy

それでも問題が解決しない場合は、最新バージョンのAndroid Studio(現在の2.1)にアップデートしてください。古いバージョンのAndroid Studioのバグである可能性があります。それは私のために今解決しました。

0
Ishant Sagar

Android Studio 3.0では、同じ問題がありました。これはそれを修正しました:

  1. スタジオを閉じる
  2. ProjectRoot/build /およびprojectRoot/app/build /を削除します。
  3. スタジオを再起動します
0
Joseph Bani

これに対する私の解決策は非常に簡単でした(あなたがWindowsを使っているなら)。 1 - Android Studioを閉じます。 2 - 管理者としてAndroid Studioを起動します。 3-それはそれです。

0
Atef Farouk

私のために働いていたのはビジュアルスタジオコードを閉じてそれを再び開くことでした...私はapkフォルダがコード内のどこかで開かれたと思います....だからちょうどそれはあなたのために働くかもしれません。

0
MSD

この問題は、Android Studio 2.0の安定版チャンネルで見られ、私のAndroid Studioのアップデート中に発生した問題が原因で、新しいAndroid Studioをインストールすることで解決しました。古いインストールの古いファイルをすべて削除した後。そしてインスタントランの非常に素晴らしい機能を維持するために

0
Mohamed