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
ユーザーディレクトリのディレクトリを削除しています。gradlew clean
ASターミナルから実行。- 手動でソースを新しいプロジェクトにコピーします(プロジェクト間でそれがどういうわけか持続するという奇妙なことです...)
私が少し成功して試しましたが、エラーが再び発生する前に、もう一度クリーンアップして再構築するだけにしておきます:
- ASを閉じ、手動でビルドファイルを削除し、再度開きます。
java.exe
ASの実行中にプロセスを強制終了します(これは技術的には毎回実行できますが、面倒でビルドプロセスの速度が低下します)。
したがって、Javaプロセスをコンパイルすると、なんらかの理由でビルドファイルがロックされる可能性がありますが、Kotlinにも関係している可能性があります。私が取り組んでいる(より成熟した)Java Androidプロジェクトがありますが、クリーニングするとこのエラーを再現できません。それは私のKotlinプロジェクトでのみ発生するようです。
更新:
この問題は、Kotlin Androidプラグインが原因であることがわかりました。apply plugin: 'kotlin-android'
モジュールのbuild.gradle
ファイルから削除すると問題が消え、再度挿入すると問題が再発します。これについての洞察を提供してください。
アップデート2:
最後の更新は原因ではありません。プロジェクトにKotlinファイルが含まれている場合、再構築とクリーニングが失敗することがわかりました。すべてのKotlinファイルが削除されても、バックグラウンドJavaプロセスが強制終了されるまで失敗し続けます。つまり、ビルドファイルになんらかのロックがかかります。詳細とバグの再現手順を記載したバグをここに提出しました:KT-9440