Badam konfigurację programistyczną dla naszych kolejnych opracowań.
Wymagania
- Java, WAR
- JavaScript, Angular2
- JSP, HTML, CSS
Robiąc to z zaćmieniem neonu i zaćmieniem węzła, prosty „Hello World” Angular2 zajmie giganta
100 MB, słownie sto megabajtów
prawie wszystko znajduje się w „node_modules”. Wygenerowanie WAR powoduje, że po długim czasie oczekiwania około 30 MB.
Czy istnieje sposób na zmniejszenie tego gigantycznego rozmiaru do rozsądnego rozmiaru?
Zgodnie z propozycją zbadałem oba sposoby przy użyciu pakiet internetowy z prostymi aplikacjami „Hello World”
Najpierw próbowałem http://angular.io/docs/ts/latest/guide/webpack.html . Po usunięciu Pliki .map całkowity rozmiar był 1,1 MB. The (zapakowane) WOJNA przychodzi z 250 KB
Po drugie próbowałem kątowy-cli. angular-cli tworzy zestaw plików konfiguracyjnych i prosty „Hello World”. Po usunięciu Pliki .map całkowity rozmiar był 3,2 MB. WOJNA przychodzi z 490 KB.
Jeśli chodzi o rozmiar, oba podejścia wydają się prawidłowe. Będziemy jednak kontynuować pierwsze podejście, ponieważ użyło jawnego pliku konfiguracyjnego dla pakiet internetowy. Musimy dostosować pakiet internetowy w celu korzystania i wsparcia JSP. Nie jest oczywiste, jak można to zrobić za pomocą angular-cli.
Jeśli nie musisz poprawiać konfiguracji pakietu internetowego, możesz preferować kątowy-cli
Odpowiedzi:
2 dla odpowiedzi № 1W rzeczywistości jest to doświadczenie, którego doświadczasz, rozpoczynając od kąta 2 i węzła. Rozwiązaniem tego jest użycie narzędzie do tworzenia pakietów, takie jak „webpack”. Polecam stworzyć projekt początkowy z „angular-cli” https://github.com/angular/angular-cli i zacznij od tego miejsca, aby dodać swój projektkomponenty, biblioteki, ... Umożliwia to bardzo szybkie przejście do programowania i testowanie tej funkcji. Badanie ogromu i złożoności tego zjawiska jest zalecane, ale można to zrobić krok po kroku.
Polecenia wiersza polecenia dla tego wygenerowanego projektu - można je zobaczyć w wygenerowanym „package.json” - zapewnia wszystko, czego potrzebujesz, aby opracować i uruchomićkod i również na przykład npm run build: prod ... przygotowanie kodu do wdrożenia, w tym zmniejszenie i spakowanie kodu do absolutnego minimalnego rozmiaru (w moim przypadku od ~ 120 MB do 2,7 MB)