Android Studioでのmakeとbuildの違い


134

Android Studioのビルドメニューには、次のオプションがあります。

Make Project
Rebuild Project

それぞれをいつ使用すればよいですか?


25
もう1つのわかりにくいオプション、Clean Projectを忘れました。
Scott Biggs

回答:


132

ほとんどの場合、Make Projectを使用する必要があります。ライブラリを追加し、プロジェクトに大きな変更を加えた後、プロジェクトの再構築を使用する必要がある場合があります。

メニューを見ると、「プロジェクトを作成」と「コンパイル」にキーボードショートカットがあり、それらが頻繁に使用されていることがわかります。その他はめったに使用されません。

IntelliJ Ideaと同じです。

コンパイル指定されたスコープ内のすべてのソースファイルがコンパイルされます。この場合のスコープは、ファイル、パッケージなどです。

プロジェクトの作成最後のコンパイル以降に変更されたプロジェクト全体のすべてのソースファイルがコンパイルされます。必要に応じて、依存するソースファイルもコンパイルされます。さらに、変更されたソースのコンパイルまたは作成プロセスに関連付けられたタスクが実行されます。たとえば、検証ページで対応するオプションが有効になっている場合、EJB検証が実行されます。

Make Module Compiledは、選択したモジュールと、それが再帰的に依存するすべてのモジュールで、最後のコンパイル以降に変更されたすべてのソースファイルです。

プロジェクトの再構築プロジェクト内のすべてのソースファイルが再コンパイルされます。これは、クラスパスエントリが変更された場合、たとえば、使用されているSDKまたはライブラリが追加、削除、または変更されたときに必要になる場合があります。

IntelliJ Idea 13のヘルプからコピー。


ありがとう。jetbrains.com/idea/webhelpで検索機能を使用しましたが、有用な回答に近づくことができませんでした
cja

6
どちらを使用するかはまだわかりません。
久野

1
@Kuno- Makeプロジェクトを使用して、ソースコードが変更されたファイルのみをコンパイルします。Rebuildプロジェクトを使用して、すべてのソースファイルをコンパイルします(変更されているかどうかに関係なく)
Nanda

1
Android Studioプロジェクトのコンパイル方法はGradleを使用しているため、これは答えではありません。正解は、gradleレベルでの違いを示します。
ミゲル2015年

55

違いは、Rebuildが最初にGradleのクリーンタスクを実行することです。Gradleコンソールを見ると「Rebuild Project」は次のようになります

Executing tasks: [clean, :app:compileDebugSources, :app:compileDebugAndroidTestSources]

「Make Project」にはありませんが clean

Executing tasks: [:app:compileDebugSources, :app:compileDebugAndroidTestSources]

私はそれが受け入れられる答えであると思います。しかし、gradle consoleで 'Make Project'の間に何かを見つけますExecuting tasks: [:app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies, :app:compileDebugSources, :app:compileDebugAndroidTestSources, :app:compileDebugUnitTestSources]
chefish

Make Project内なる声を叩くたびRebuild Projectに、念のため叩くように言われます。
iCantC

0

makeとrebuildの違いは "クリーン"タスクです。

あなたが行う場合は、プロジェクトを再構築し、それはあまりにもきれいに実行されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.