W firmie, w której pracuję, mamy produkt, który na wszystkie potrzeby można nazwać consultingware. Jest to platforma dla EDI z kilkoma ruchomymi częściami. Back-end to ESB napisany w Java SE, front-end to aplikacja Java EE uruchomiona na GlassFish, baza danych jest zwykle na serwerze MSSQL, a RabbitMQ jest używany jako oprogramowanie do kolejkowania. Jest niezależny od domeny w tym sensie, że można wdrożyć różne modele wiadomości i odwzorowania. Utworzenie nowego środowiska zajmuje trochę czasu, ale wiele z nich to zwykłe zadania, które można łatwo zautomatyzować, wypełniając odpowiednie parametry i uruchamiając skrypty. T-SQL dla bazy danych, skrypty asadmin na GlassFish i konfiguracje ESB to XML, więc transformacja XSLT na szablonie wykona zadanie.Tworzenie instalatora dla oprogramowania konsultacyjnego
To nigdy nie stanie się prostą instalacją, ale posiadanie "instalatora", który wykonuje większość pracy za ciebie, wymienia wstępne kroki, przedstawia użytkownikowi wygodny sposób dostarczania niezbędnych parametrów, generowania skryptów i wprowadzania rzeczy na miejscu byłyby miłe; nawet jeśli tylko twórcy oprogramowania kiedykolwiek go użyją, ułatwi to życie. Chociaż oprogramowanie jest technicznie niezależne od platformy, zazwyczaj działa na Windows Server.
Po prostu wykonanie aplikacji Java, która to robi, nie będzie bardzo trudne, ale zamiast odkrywać nowe koło (i stworzyć prawdopodobnie bardzo brzydki GUI), chciałbym sprawdzić, czy istniejące rozwiązania pasują do rachunku. InstallShield i Inno Setup wyglądają obiecująco. Pytanie brzmi: jakie istniejące narzędzie może zapewnić następujące rozwiązania, czy też może warto coś od podstaw?
- Zadzwoń do innych plików wykonywalnych lub instalatorów (na przykład do GlassFish).
- Uruchamiaj skrypty powłoki (dla konfiguracji asadmin).
- Połącz się z bazą danych (MSSQL) i uruchom skrypty.
- Wykonaj transformacje XSLT (może to być wywołanie metody Javy/wykonanie JAR).
- Skonfiguruj usługi.
- Może mają jakiś sposób na sprawdzenie, czy wymagania są spełniona (sprawdzić, czy jest zainstalowany GlassFish, RabbitMQ DB jest dostępny ...)
[Pomoc/temat] wyraźnie mówi * Pytania z prośbą o zalecenie lub znalezienie książki, narzędzia, biblioteki oprogramowania, samouczka lub innych zasobów poza siedzibą są wyłączone -topic dla Stack Overflow. * Jaka część tego jest trudna do zrozumienia, więc możemy spróbować uczynić ją bardziej zrozumiałą dla innych w przyszłości? –
@KenWhite Być może źle interpretuję cię, ale to wydaje się nieco niegrzeczny i protekcjonalny sposób mówienia komuś o tym. A może chcesz wiedzieć, jak lepiej wyróżnić tematy pomocy? Czy mogę przeformułować to pytanie jako "czy powinienem trzymać się narzędzi lub wykonywać własne" i pozostać na temat? –