2017-02-02 10 views
7

Witam W moim projekcie mam wiele słoików. Za każdym razem, gdy zmieniam kod i trzeba go przesłać na serwer, zajmuje to bardzo dużo czasu, ponieważ dodam do wojny słoiki, które mają zostać wdrożone na tomcat. Próbuję umieścić wszystkie słoiki na serwerze, w jakimś folderze i załadować tylko resztę projektu, aby przyspieszyć cykl. Jaki będzie najlepszy sposób na zrobienie tego?Jak używać zewnętrznych słoików bez dodawania ich do projektu

Używam tomcat 8.5 również do wdrożenia produkcyjnego bez żadnego narzędzia do kompilacji. Chciałbym ustawić ścieżkę ABSOLUTE w ścieżce klas, ale gdy to zrobię na moim komputerze lokalnym, nie będzie działać po wdrożeniu na serwerze unixowym.

nigdy nie widziałem gdzie czy mogę ustawić ścieżkę bezwzględną do słoików (nie z komputera lokalnego)

góry dziękuję

+0

Jaka wersja Tomcat używacie? Czy polegacie na dowolnym narzędziu do budowania (mrówka, maven, gradle, GUI itp.)? – Aaron

+0

Czy te same słoiki są zawsze za każdym razem, czy one się zmieniają Czy używasz tomcat do wdrożenia? dlaczego po prostu nie dodajesz słoików do ścieżki i podajesz tę ścieżkę w ścieżce klas? Ilekroć słoik wymaga wymiany, po prostu włóż ten słoik do tego folderu. –

+0

Czy potrzebujesz tego tylko do programowania lub do wdrożenia produkcyjnego? –

Odpowiedz

1

Można przeczytać o tym w docs Tomcat: Class Loader HOW-TO.

Najprostszy przypadek i sposób - umieść te powszechnie używane słoiki w katalogu $CATALINA_BASE/lib - zostaną one załadowane przez moduł ładujący klasy Tomcat.

Ale, to nie wydaje się być bardzo miły zwyczaj, jak wspomniano samouczki roszczeń:

Zwykle zajęcia aplikacja NIE powinna być umieszczona tutaj.

Osobiście ja, w praktyce, zignorowałbym tę podpowiedź i nadal umieszczam słoiki w tym folderze. Ale jeśli chcesz być dokładny, możesz utworzyć oddzielną ścieżkę na serwerze (lub nawet w katalogu CATALINA_BASE) i umieścić tam słoiki. Następnie trzeba określić tę ścieżkę w pliku $CATALINA_BASE/conf/catalina.properties w common.loader nieruchomości:

common.loader="${catalina.base}/lib","${catalina.base}/lib/*.jar","${catalina.home}/lib","${catalina.home}/lib/*.jar" 
Powiązane problemy