Shift + F6を押すと、最後のディレクトリの名前のみが変更されるようです。
たとえば、プロジェクトcom.example.test
では、テストのみの名前変更を提案します。 .Java
またはマニフェストファイルでパッケージ名に移動し、Shift + F6を押した場合も同様です。
パッケージの名前を変更する方法はありますか?
あなたはこれを行うことができます:
R.Java
クラスをクリックして、プレス F6 (リファクタリング->移動...)。クラスを別のパッケージに移動することができ、そのクラスへのすべての参照が更新されます。これを解決する最善の方法は、AndroidManifest.xmlに行くことです:package="com.foocomp.fooapp
:
私のために働く。
また、すべてを変更しなかったため、プロジェクト全体のパスを置き換えます。その後、クリーン、リビルド、そしてそれが動作します-> Android Studio/IntelliJでは、「Compact Empty Middle Packages」のマークを外す必要があります
Eclipse:プロジェクトを右クリック> Android tools> Rename application package。
それと同じくらい簡単...
Android Studioで:build.gradleファイルを開き、defaultConfigの下のapplicationIdの名前を変更し、同期します。
プロジェクト全体でパッケージの名前を変更する別のソリューションを見つけました:
これにより、プロジェクト全体でパッケージ/ディレクトリの名前が変更されます。
Project ExplorerのWindows設定メニューで[空の中間パッケージを非表示]を選択解除すると、各ディレクトリをリファクタリングできるようになります。
2つのユースケースに対処しましょう
**パッケージ名の変更またはパッケージのトリム**
com.mycompany.mystupidapplicationnametocom.mycompany.brandname
または
com.someothercompany.mystupidapplicationnametocom.someothercompany.mystupidapplicationname
または
com.someothercompany.mystupidapplicationnametosomeothercompany.brandname
しかし、これはパッケージ名の最後の部分のみを名前変更します
ダミーファイルを削除する
パッケージをトリミングするには、右クリックしてパッケージパーツをその親の親内に移動するだけです
この問題の回避策が見つかりました。質問で言及された例を取り上げると、パッケージ名をcom.example.test
からcom.example2.test
に変更する手順は次のとおりです。
temp
内に(ディレクトリexample
と共に)test
と言う一時ディレクトリを作成します。com.example
フォルダーを選択して、Shift + F6
をクリックします。テキストexample
の名前を変更するようになりました。ここで、必要な新しいテキストを入力すると、IntelliJが残りの作業を行います。temp
を削除します。このアイデアは、パッケージ名の任意の部分をリファクタリングするために使用できます。
がんばろう!!
この変更には3つの手順が必要です。
次に、プロジェクトをクリーン/リビルドします
残念ながら、上記のすべては私にとってはうまくいきませんでした。たくさんのトライアルを行った後、Android Studioでうまくいったこと:
必要な新しいパッケージ名にパッケージを「移動」します(パッケージを右クリックして[リファクタリング]-> [移動]を選択します)。既存のパッケージを手動で新しいパッケージに移動してから、古い空のパッケージを削除します。
マニフェストのパッケージ名を変更する(手動)
Android Studio 1.1の最も簡単な方法は、プロジェクトmanifest file
を開き、変更するpackage name
の各部分をポイントして、押すことです。 SHIFT + F6 、rename package
を選択し、ダイアログボックスに新しい名前を入力します。それで全部です。
私がしたことは次のとおりでした:
Srcフォルダーに、現在の名前の現在のパッケージの隣に、目的の名前のパッケージを作成しました。
私は現在のパッケージのすべての内容を新しいパッケージにドラッグし、intellijはパッケージ参照とプロジェクト参照を新しいパッケージにリファクタリングするかどうかを尋ねるダイアログボックスをポップし、「はい」とTA-DAAAをクリックし、魔法のように働きました。
最も投票された回答でさえ、ほとんどの回答は適切に機能しませんでした。それらは機能しているようで、ビルドは機能しています。 IntelliJは実際にこのプロセス全体を自動的に実行します。
最も投票された回答でさえ、ほとんどの回答は適切に機能しませんでした。それらは機能しているようで、ビルドは機能しています。 IntelliJは実際にこのプロセス全体を自動的に実行します。
1)[プロジェクト]タブに移動し、次のようにドロップダウンで[パッケージ]がアクティブなタブであることを確認します。
com.exampleパッケージを見つけます(com.example.testにあるようなテストはありません)。右クリックして[リファクタリング]-> [名前の変更...]を選択します。
複数のディレクトリ...(実際には望ましい効果です)という警告が表示されます。[パッケージ名の変更]をクリックします。
新しいパッケージ名を入力してリファクタリング...
検索を実行し、リファクタリング結果を表示します。
[リファクタリングを実行]ボタンをクリックすると、すべての処理が行われ、関連するフォルダーとファイルの名前も変更されます。すべての参照がこの新しい名前に修正されます。
2)次に、最後にAndroidManifest.xmlファイルを変更します
:)
コマンドラインから手動でディレクトリ名を変更することで、この問題を解決しました。その後、Intellijは新しいパッケージ名を自動的に認識しました。次に、インポートした各ファイルのパッケージ名を検索して置換する必要がありました。これはい回避策のように見えますが、Intellijはパッケージ名を変更したくないと考えました。
私がしたことは次のとおりでした
完全なAndroidパッケージの名前を変更する場合、これが最適な方法です。
チェック済みとしてマーク-Comapct Emty Middleパッケージ
変更するパッケージを右クリックし、[リファクタリング]-> [名前の変更]-> [すべての名前を変更]
このリンクでビデオチュートリアルを見つけることができます: https://www.youtube.com/watch?v=A-rITYZQj0A
上記の@Cristianの answer に加えて、正しく動作させるためにさらに2つのステップを実行する必要がありました。ここですべてをまとめます。
R.Java
クラスをクリックして、F6
(リファクタリング->移動...)を押します。クラスを別のパッケージに移動することができ、そのクラスへのすべての参照が更新されます。build.gradle
ファイルのアプリケーションIDを手動で変更します:Android/defaultconfig/application ID [source] .解決策1:srcサブフォルダー名、マニフェストファイル、アクティビティヘッダー、および実行/デバッグ構成を変更しました。そして、まだ構築エラーが発生しました。プロジェクトがそれほど大きくない場合は、新しいプロジェクトを作成し、古いファイルをコピーして貼り付け、.JavaファイルのヘッダーとAndroidマニフェストのパッケージ名を変更します。
解決策2:IntelliJ 12内で、someFile.Javaに移動し、古いパッケージ名を見つけます
package com.myself.project2
変更するWordをクリックします。押す Shift+F6。
ダイアログが表示されたら、新しい名前を入力します。
次に、構成の実行/編集に進みます。 Inside Launchオプションボタンは、パッケージ名を新しいものに変更します。動作するはずです。
IntelliJのその他の名前変更オプションは次のとおりです。 http://www.jetbrains.com/idea/webhelp/rename-refactorings.html
超シンプルアプローチ:
R.Java
R.Java
新しく作成されたパッケージに。できた!