Sự khác biệt giữa tạo và xây dựng trong Android Studio


134

Menu Xây dựng Android Studio có các tùy chọn bao gồm

Make Project
Rebuild Project

Khi nào tôi nên sử dụng mỗi?


25
Bạn đã quên một tùy chọn khó hiểu hơn: Dự án sạch.
Scott Biggie

Câu trả lời:


132

Hầu hết thời gian bạn nên sử dụng Make Project . Đôi khi, sau khi thêm thư viện và thực hiện các thay đổi lớn cho dự án, bạn nên sử dụng Dự án Rebuild .

Nếu bạn nhìn vào menu, bạn sẽ thấy Make Project and Compile có các phím tắt, điều đó cho thấy rằng chúng thường được sử dụng. Những người khác hiếm khi được sử dụng.

Nó giống như IntelliJ Idea.

Biên dịch Tất cả các tệp nguồn trong phạm vi được chỉ định được biên dịch. Phạm vi trong trường hợp này có thể là một tập tin, một gói, v.v.

Tạo dự án Tất cả các tệp nguồn trong toàn bộ dự án đã được sửa đổi kể từ lần biên dịch cuối cùng được biên dịch. Các tập tin nguồn phụ thuộc, nếu thích hợp, cũng được biên dịch. Ngoài ra, các tác vụ gắn liền với quá trình biên dịch hoặc thực hiện quy trình trên các nguồn sửa đổi được thực hiện. Ví dụ: xác thực EJB được thực hiện nếu tùy chọn tương ứng được bật trên trang Xác thực.

Tạo mô-đun Compiled là tất cả các tệp nguồn đã được sửa đổi kể từ lần biên dịch cuối cùng trong mô-đun được chọn cũng như trong tất cả các mô-đun, nó phụ thuộc vào đệ quy.

Xây dựng lại dự án Tất cả các tệp nguồn trong dự án được biên dịch lại. Điều này có thể cần thiết khi các mục nhập đường dẫn đã thay đổi, ví dụ: SDK hoặc thư viện đang được sử dụng thêm, xóa hoặc thay đổi

Sao chép từ IntelliJ Idea 13 giúp đỡ .


Cảm ơn. Tôi đã sử dụng chức năng tìm kiếm tại jetbrains.com/idea/webhelp nhưng không thể tìm được câu trả lời hữu ích nào
cja

6
Tôi vẫn không thấy khi nào nên sử dụng.
Kuno

1
@Kuno - Sử dụng Make dự án để chỉ biên dịch các tệp có mã nguồn đã được thay đổi. Sử dụng dự án Rebuild để biên dịch tất cả các tệp nguồn (bất kể chúng có thay đổi hay không)
Nanda

1
Đây không phải là một câu trả lời vì cách các dự án Android Studio được biên dịch là thông qua lớp. Một câu trả lời đúng sẽ cho biết sự khác biệt ở cấp độ lớp.
miguel

55

Sự khác biệt là Rebuild thực hiện nhiệm vụ sạch của lớp trước. Nếu bạn nhìn vào Bảng điều khiển Gradle 'Dự án xây dựng lại' sẽ nói một cái gì đó như

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

Trong khi 'Tạo dự án' sẽ không có clean

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

Tôi nghĩ đó phải là câu trả lời được chấp nhận. Nhưng tôi tìm thấy thứ gì đó trong khi 'Tạo dự án' trong bảng điều khiển lớpExecuting tasks: [:app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies, :app:compileDebugSources, :app:compileDebugAndroidTestSources, :app:compileDebugUnitTestSources]
bếp

Mỗi lần tôi nhấn Make Projectmột giọng nói nội tâm bảo tôi đánh Rebuild Projectchỉ để chắc chắn.
iCantC

0

Sự khác biệt giữa thực hiện và xây dựng lại là nhiệm vụ "sạch".

Khi bạn làm lại dự án, nó cũng thực hiện sạch sẽ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.