Beta 3では、レイアウトファイルなどのリソースファイルの名前を変更することはできません。名前変更ダイアログは表示されますが、変更を適用しようとすると、次のエラーメッセージが表示されます。
Refactoring cannot be performed
File .../myapplication/R.Java is read-only
また、近隣ディレクトリにBeta 2バージョンがあり、名前の変更は完璧に機能します。それを修正する方法はありますか?
UPD:私はバグ(#65079508)を報告し、65032914の複製としてマークされました https://issuetracker.google .com/issues/65032914
したがって、問題はさらに広がり、私がそれをよく理解すれば、Studioの今後のバージョンでバグが修正されます。
UPD#2:Beta 4がリリースされました。バグはまだ修正されていません。
UPD#3Beta 5で修正されました。
Android Studio 3.0 Beta 3)で同じ問題が発生しています。次の方法で問題を修正しました:
明らかに、これは古いファイルへの参照を手動でリファクタリングする必要があることを強制しますが、私は数十の異なること(R.Javaアクセス許可の変更、Gradleのクリーン、キャッシュの無効化など)を試みましたが、どれも機能しませんでした。
この問題が発生した他の人は、このバグをAndroid Studioの[ヘルプ]> [フィードバックの送信]を使用して送信してください。
また、あなたが multiple layouts folder を使用している可能性はありますか?
同じ問題があります。私はこれで解決しました
ファイル->キャッシュを無効にして再起動->無効にして再起動します。
そして、もう一度名前を変更してみてください。
この助けを願っています。幸せなコーディング:)
R.Java
ファイルをsrc
ディレクトリに移動することで、一時的に回避できました。たとえば、パッケージ名がcom.example.sample
の場合、R.Java
ファイルをapp/build/generated/source/r/debug/com/example/sample/R.Java
からapp/src/main/Java/com/example/sample/R.Java
に移動します。リファクタリングが完了したら、必ず削除してください。ビルドプロセス中に再生成されます。
クリーニングはすべてに対して機能するわけではありません。たとえば、R.Javaファイルは自動的に再生成されるため、ビューの名前を変更することはできません。 Instant Runを無効にしてみましたが、それも役に立ちませんでした。最終的には、レイアウトファイルでビューの名前を手動で変更する必要がありました。
https://issuetracker.google.com/issues/65032914 のバグチケットのコメントから、修正はAndroid Studio。