2010-03-04 39 views
5

Sprocket là một thư viện Ruby để quản lý các phụ thuộc JavaScript. Nó làm cho nó có thể khai báo các phụ thuộc trong các chú thích được định dạng đặc biệt trong các tệp JavaScript và có tất cả các tệp được yêu cầu ghép nối phía máy chủ. (Đọc thêm tại đây: http://getsprockets.org/)Có một cái gì đó giống như Sprocket tồn tại cho Java

Ở nơi tôi làm việc, chúng tôi có nhu cầu thực sự cho một khuôn khổ như vậy, nhưng nó phải ở dạng thư viện Java.

Điều đó có tồn tại không? Bạn đã đưa ra giải pháp nào khác để quản lý các phụ thuộc JavaScript?

Trả lời

2

Bạn cũng có thể sử dụng juicer để hợp nhất các tệp javascript mặc dù nó cũng được viết bằng ruby.
Một tùy chọn khác, tôi giả sử, sẽ phù hợp với bạn đang sử dụng combiner bởi Nicholas C. Zakas nếu bạn không cần tất cả các tính năng của máy ép trái cây và sprockets. Nó khá đơn giản, được viết bằng java (.jar) và nguồn có thể được tìm thấy trong tác giả của repository. Bạn cũng có thể nĩa nguồn để điều chỉnh nó theo nhu cầu của bạn.

+0

Tôi đã xem bộ kết hợp. Nó dường như làm chính xác những gì tôi đang tìm kiếm :-) Nguồn có sẵn trên GitHub: http://github.com/nzakas/combiner/tree/master/src/net/nczonline/web/combiner/ – KaptajnKold

+0

@KaptajnKold Combiner không chính xác bởi vẻ ngoài của nó. Làm nó trong thời gian chạy là tốt hơn rất nhiều so với thời gian xây dựng. – egervari

2

Tính năng này tồn tại trong khung công tác Wicket. Đây là một khung công tác web theo định hướng thành phần cho Java đang có đà trong những ngày này.

Wicket cho phép bạn xác định tài nguyên tiêu đề trong các thành phần của bạn (ví dụ: tập lệnh Javascript, tệp CSS, v.v.) và kết hợp chúng khi chạy, loại bỏ trùng lặp.

+1

Tính năng này trong Wicket có phải là một thư viện độc lập không? Chúng tôi đã có một ứng dụng web lớn sử dụng Tapestry/Spring/Hibernate. – KaptajnKold

+0

Thật không may, tôi nghĩ rằng nó không. –

1

Tôi biết điều này đã được trả lời từ lâu nhưng cuộc bỏ phiếu của tôi dành cho JAWR!

0

Bạn có thể chạy sprockets bên trong một ứng dụng web java bằng cách sử dụng jruby. Nó không quá khó. Bạn có thể vô hiệu hóa sprockets trong sản xuất và chỉ sử dụng tài sản được biên dịch tĩnh nếu bạn lo lắng về hiệu suất. Cũng có thể Servlet-3.0 hoàn toàn vô hiệu hóa các sprockets trong sản xuất và có cùng một web.xml hoặc bạn có thể làm những điều tồi tệ với trình nghe ngữ cảnh proxy và bộ lọc proxy servlet nếu bạn lo lắng về việc phải tải thời gian chạy và sprockets jruby ngay cả khi bạn không sử dụng nó.

Tôi có một ví dụ ở đây: https://github.com/benmmurphy/java_sprockets

0

Vâng, nó tồn tại và thậm chí nó phong phú hơn về tính năng https://github.com/QubitProducts/miniMerge.

Ii cũng rất nhanh và rất nhỏ (vài kb)! Tất cả những gì bạn cần là java.

Tôi sử dụng nó trong tất cả các dự án của mình, nó không chỉ dành cho JS, tôi cũng sử dụng nó với CSS và HTML.

Một điều tuyệt vời là bạn có thể chỉ định tệp hoặc thư mục làm nội dung đầu vào và lọc dựa trên gắn thẻ!

Các vấn đề liên quan