2010-03-04 13 views
5

Sprocket to biblioteka Ruby do zarządzania zależnościami JavaScript. Umożliwia deklarowanie zależności w specjalnie sformatowanych komentarzach w plikach JavaScript i posiada wszystkie wymagane pliki połączone po stronie serwera. (Przeczytaj więcej tutaj: http://getsprockets.org/)Czy istnieje coś takiego jak Sprocket dla Java

Gdzie pracuję, potrzebujemy takiego szkieletu, ale musi to być biblioteka Java.

Czy coś takiego istnieje? Jakie inne rozwiązania wymyśliłeś, aby zarządzać zależnościami JavaScript?

Odpowiedz

2

Możesz także użyć juicer do scalenia plików javascript, chociaż jest on również pisany w ruby.
Inną opcją, która, jak sądzę, będzie dla Ciebie odpowiednia, jest użycie combiner Nicholas C. Zakas, jeśli nie potrzebujesz wszystkich funkcji sokowirówki i kół zębatych. Jest to dość proste, napisane w java (.jar), a jego źródło można znaleźć w repository autora. Możesz również rozwidlić źródło, aby dostroić je zgodnie z Twoimi potrzebami.

+0

Spojrzałem na kombinator. Wygląda na to, że robię dokładnie to, czego szukam :-) Źródło jest dostępne na GitHub: http://github.com/nzakas/combiner/tree/master/src/net/nczonline/web/combiner/ – KaptajnKold

+0

@KaptajnKold Combiner nie jest dokładny pod względem wyglądu. Robienie tego w czasie wykonywania jest o wiele lepsze niż w czasie kompilacji. – egervari

2

Taka funkcja istnieje w strukturze Wicket. Jest to zorientowana na komponenty platforma internetowa dla Javy, która obecnie zyskuje na popularności.

Wicket pozwala ci zdefiniować zasoby nagłówków w twoich komponentach (np. Skrypty JavaScript, pliki CSS itp.) I łączy je w czasie wykonywania, usuwając duplikaty.

+1

Czy ta funkcja w Wicket jest dostępna jako samodzielna biblioteka? Mamy już dużą aplikację internetową, która używa Tapestry/Spring/Hibernate. – KaptajnKold

+0

Niestety, myślę, że tak nie jest. –

1

Wiem, że odpowiedź została udzielona dawno temu, ale mój głos jest dla JAWR!

0

Możesz uruchomić koła zębate wewnątrz aplikacji sieciowej Java za pomocą jruby. Nie jest to zbyt trudne. Możesz wyłączyć zębatki w produkcji i używać tylko statycznie skompilowanych zasobów, jeśli martwisz się wydajnością. Możliwe jest również, aby serwer Servlet-3.0 całkowicie wyłączał koła łańcuchowe w produkcji i miał ten sam plik web.xml lub można było robić podejrzane rzeczy za pomocą kontekstowego detektora proxy i filtru serwletów proxy, jeśli obawiasz się, że musisz ładować junty środowisko uruchomieniowe i koła łańcuchowe, nawet gdy nie używasz tego.

Mam przykład tutaj: https://github.com/benmmurphy/java_sprockets

0

Tak, to nie istnieje, a jego jeszcze bogatsza funkcjonalność https://github.com/QubitProducts/miniMerge.

Ii jest również bardzo szybki i bardzo mały (kilka kb)! Wszystko czego potrzebujesz to java.

Używam go w moich wszystkich projektach, to nie tylko dla JS, używam go również z CSS i HTML.

Jedną z niesamowitych rzeczy jest to, że można określić plik lub katalog jako zawartość wejściową i filtrową w oparciu o oznaczanie!

Powiązane problemy