Trình biên dịch Java cung cấp xây dựng gia tăng, do đó, javac tác vụ kiến là tốt. Nhưng hầu hết các quy trình khác thì không.Làm thế nào để cấu hình xây dựng lười biếng hoặc gia tăng nói chung với Ant?
Xem xét các quy trình xây dựng, chúng chuyển đổi một số bộ tệp (nguồn) thành tập hợp tệp khác (đích).
tôi có thể phân biệt hai trường hợp ở đây:
- Transformator không thể mất một tập hợp con của file nguồn, chỉ có toàn bộ. Ở đây chúng tôi chỉ có thể tạo xây dựng lười biếng - nếu không có tệp nào từ nguồn được sửa đổi - chúng tôi sẽ bỏ qua quá trình xử lý.
- Biến áp có thể lấy một tập hợp con các tệp nguồn và tạo ra một phần kết quả - xây dựng gia tăng.
Kiến trúc bên trong, bên thứ ba hoặc các công cụ khác để triển khai xây dựng lười biếng và gia tăng là gì? Bạn có thể cung cấp một số ví dụ về tệp dựng sẵn phổ biến không?
Tôi quan tâm đến việc này để làm việc với trình biên dịch GWT nói riêng.
Nhưng chắc chắn có thể KHÔNG có mã nào ảnh hưởng đến đầu ra của mô-đun GWT và do đó mô-đun sẽ không cần biên dịch lại. Các thay đổi ảnh hưởng đến đầu ra là bất kỳ thứ gì được bao gồm trong số cây –
@Andrew Không, không cần thiết. Bởi vì trình biên dịch GWT loại bỏ tất cả các mã không được sử dụng. Vì vậy, nếu bạn bắt đầu sử dụng một phương thức từ mô-đun đó, nó sẽ không có sẵn. Cũng vì tối ưu hóa nội tuyến xảy ra trước khi JavaScript thực được tạo. Có lẽ nó sẽ có thể cache kết quả trung gian, nhưng tôi không chắc liệu điều đó có hiệu quả không, bởi vì những kết quả đó cần phải diễn giải lại và đọc/ghi vào đĩa, thay vì giữ nó trong bộ nhớ. –
Nhưng nếu không có nguồn Java (được sử dụng để tạo ra đầu ra JS) đã thay đổi kể từ lần biên dịch cuối cùng, thì không cần phải biên dịch lại bất kỳ thứ gì, tối ưu hóa và nội tuyến và xóa mã bao gồm ..... –