W latach programowania Java, a ostatnio Scali, nigdy nie używałem Anta, Mavena, Gradle'a ani żadnego z tych narzędzi do budowania Javy. Wszędzie, gdzie pracowałem, był menedżer kompilacji, który zadbał o to wszystko - skompilowałem lokalnie z IDE do programowania i testów jednostkowych, następnie sprawdziłem kod źródłowy i powiadomiłem menedżera kompilacji, który zrobił to, co było konieczne, aby skompiluj pliki wszystkich dla wspólnego środowiska.
Teraz, gdy jestem między umowami, pracuję nad własnym, samofinansującym się projektem i dochodzę do punktu, w którym może być wystarczająco dobry, aby zarabiać pieniądze. Mam nawet potencjalnego inwestora w kolejce i planuję pokazać mu wersję beta w ciągu najbliższych kilku tygodni.
Ale przez cały czas po prostu klikam przycisk kompilacji w IDE, a on tworzy plik Jar i działa dobrze. Oczywiście, konwencjonalna mądrość sugeruje, że „powinienem” pisać własne skrypty Ant / Maven / Gradle i używać ich zamiast IDE, ale jakie są konkretne zalety tego w mojej sytuacji (praca w pojedynkę)?
Przeczytałem trochę o tym, jak korzystać z tych narzędzi do budowania i wygląda na to, że napisałbym setki wierszy XML (lub Groovy lub cokolwiek innego), aby zrobić to, co robi IDE jednym kliknięciem (wygenerowane przez IDE Ant XML dla projektu to ponad 700 linii). Po prostu wygląda na podatną na błędy, czasochłonną i niepotrzebną w mojej sytuacji. Nie wspominając już o krzywej uczenia się, która zabrałaby czas na całą resztę pracy, którą wykonuję, aby przygotować produkt do pokazywania ludziom.