タイトルの通りですが、
パッケージの変更をしたいのですが、
手動でやるとなるとエクスプローラからフォルダ名変更(階層変更)や複数ファイル置換可能なエディタで置換するしかないと思います。
これを自動で一発変換してくれるAndroidStdioの機能や外部ツールがあれば教えてください。
◆環境
Windows 10
Android Studio 2.3.3
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答3件
0
ベストアンサー
お望みのことはリファクタリング機能でできます。
パッケージ名、クラス名、メソッド名、変数名等々の名前変更や階層変更を指定すると関連する情報を全て自動的に変更してくれるものです。
パッケージの名前(階層)変更についていえば、プロジェクトビューでパッケージを右クリックして
Refactor > Rename...
でできると思います。最近のちゃんとしたIDEには多分ついている気がするので「リファクタリング」というキーワードを覚えておくとよいと思います。
追記:回答コメントを拝見して気づいたこと
a.b.c => aa.bb.ccへのパッケージ変更ですが・・・AndroidStudioのプロジェクトビューはこういう感じになっていますね
(1) aの下にパッケージbしかなくbの下にもcしかない場合のプロジェクトビュー + a.b.c => package階層が一つのノードとして表示されるが・・・ (2) aの下に別のパッケージb2がありbの下に別のソースb.javaがある場合 + a + b + c <== (1)でのa.b.cはこのノードを指す + b.java + b2
(2)のケースではa, b, cをそれぞれ選択することができてRefactorでaをrenameしたりmoveしたりできますが(1)の状態ではa, bノードは表示されずcパッケージだけをa.b.cとして表示するという仕様です。ゆえにa.b.cをrenameしようとしても「cをどうrenameするか」という操作と見做されます。
パッケージのRefactoring(rename/move etc.)はあくまで一つのパッケージ階層に対してしか行えないのでそれを踏まえて操作を考えるというべきでした。
最初に戻ってa.b.c => aa.bb.ccにするなら最小でも3つの操作が必要だと思います。
(m1) aa.bbを新規に追加
(m2) a.b.cを選びRefactor>Moveでaa.bbへ移動
(m3) aa.bb.cをRefactor>Renameでaa.bb.ccへ変更
トップ階層のパッケージjp.co.company.facility => com.company.facilityに変更するといった場合も上記と同様の考え方でcompanyパッケージをjp.co=>comへ移動としたいのですが、そのままではcompanyパッケージを操作できないので
(m1) jp.coの下に何かのソースを追加
これも直接はできないので一旦jp.co.company.facilityの下にダミーのソースを追加してからそのソースをjp.coにMoveすると前述の(1)から(2)に表示が変わるのでcompanyパッケージの操作ができるようになります
(m2) comパッケージを追加
(m3) jp.co.companyをcomパッケージへ移動
表示上はcompanyノードが表示されているはずなのでそれを選びRefactor>Moveでcomの下へ移動する
(m4) ダミーのソースを削除
こんな手順になると思います。ポイントはあくまでRefactorにより「全ての整合性を取った状態でプロジェクト構造を変更する」ことですが、パッケージ階層の変更は複数のRefactor操作の組み合わせとする必要があることを踏まえ、操作手順を考えないといけないみたいです。
投稿2017/12/07 10:59
編集2017/12/15 06:16総合スコア18404
0
https://mashmorgan.hatenablog.com/entry/2018/06/06/160823
こちらのページ、かなり参考になりました。
投稿2019/11/01 02:19
総合スコア16
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/15 01:20
2017/12/15 05:25