Chức năng của Project> Clean trong Eclipse


121

Công cụ Project → Clean ... của Eclipse thực sự làm gì?

Câu trả lời:


75

Chức năng của nó phụ thuộc vào trình tạo mà bạn có trong dự án của mình (họ có thể chọn diễn giải lệnh sạch theo cách họ thích) và liệu bạn đã bật chế độ tự động chưa. Nếu chế độ tự động được bật, việc gọi clean tương đương với một bản dựng sạch. Tạo tác đầu tiên bị xóa, sau đó một bản dựng đầy đủ được gọi. Nếu tính năng tự động tạo bị tắt, tính năng dọn dẹp sẽ xóa các phần tạo tác và dừng lại. Sau đó, bạn có thể gọi bản dựng theo cách thủ công sau đó.


1
Đồ tạo tác trong bối cảnh này là gì?
Shn_Android_Dev

124

Nó loại bỏ bất kỳ tệp nào đã được biên dịch trong dự án của bạn để bạn có thể thực hiện xây dựng lại hoàn toàn mới.


11

Có một vấn đề khác trong công việc ở đây. Chức năng Clean của Eclipse bị hỏng. Nếu bạn xóa tệp bên ngoài Eclipse, nó sẽ không nhận ra thực tế là tệp hiện đang bị thiếu và bạn sẽ gặp lỗi bản dựng cho đến khi bạn xóa tệp theo cách thủ công. Ngay cả khi đó, điều đó cũng không nhất thiết sẽ hoạt động, đặc biệt nếu thiếu nhiều tệp. Điều này xảy ra với tôi khá thường xuyên khi tôi kiểm tra một nhánh mã đã có rất nhiều thay đổi kể từ lần cuối cùng tôi xây dựng nó. Trong trường hợp đó, cách duy nhất mà tôi tìm thấy là bắt đầu một không gian làm việc hoàn toàn mới và tải lại dự án từ đầu.


5
Bạn đã thử làm mới dự án chưa? Clean không kiểm tra xem các tệp nguồn có thoát hay không, nó chỉ xóa các lớp đã biên dịch. Trong chế độ xem điều hướng, hãy nhấp chuột phải vào dự án của bạn (hoặc thư mục thích hợp) và chọn Làm mới từ trình đơn ngữ cảnh. Thao tác này sẽ xóa bất kỳ tệp nào đã bị xóa và thêm bất kỳ tệp mới nào chưa được liệt kê trong dự án của bạn.
SteveS

Nhấn F5 cũng sẽ hoạt động để làm mới tài nguyên, nhưng bạn phải chắc chắn rằng bạn đã thực sự chọn các tệp bạn muốn tải lại từ hệ thống tệp cục bộ - nói cách khác, chỉ cần nhấp vào bên trong Package Explorer và nhấn F5 sẽ không làm được gì cả. Sau khi làm mới nhiều tệp, tôi thường thực hiện Dự án> Làm sạch.
hotshot309 27/07/12

@SteveS đề cập rằng làm mới các tệp trong Eclipse sẽ thêm các tệp mới và xóa các tệp cũ - nó sẽ cập nhật mọi tệp đã thay đổi (hoặc thêm hoặc xóa) với hệ thống tệp. Nếu các tệp đã bị thay đổi bên ngoài Eclipse trong khi không gian làm việc của bạn đang mở trong Eclipse, thì Eclipse sẽ không phát hiện các thay đổi và tự tải lại các tệp đó. Có thể rất khó chịu khi bạn đang biên dịch từ một bản sao cũ hơn của các tệp đã được lưu trong bộ nhớ cache mà bạn đã thay đổi bên ngoài Eclipse (như tệp hình ảnh) nhưng không thấy các thay đổi khi chạy ứng dụng của mình, nếu bạn không nhận ra rằng Làm mới là cần thiết.
hotshot309, 27/07/12

-5

Tôi cũng gặp phải vấn đề tương tự với Eclipse khi chạy bản dựng sạch với Maven, nhưng có một giải pháp đơn giản cho vấn đề này. Chúng tôi chỉ cần chạy cập nhật Maven và sau đó xây dựng hoặc chạy trực tiếp ứng dụng. Tôi hy vọng nó sẽ giải quyết được vấn đề.

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.