Fórumok
Úgy alakult, hogy jó lenne, ha tudnék egy darab installert előállítani, ami "telepít" egy Tomcatet, MySQL-t, deployolja az elkészített war-file-t, stb. Szóval egy kulcsra kész webappot tud localhostra varázsolni baromi egyszerűen.
Van erre valami megoldás?
Hozzászólások
Csinálj kicsi VMWare gépet és azt az image-et terjeszt, VMPlayer / VirtualBox lejátszák és egyben marad az egész, mintsem szétinstallálod a gépet.
Azzal az a gond, hogy valószínüleg laikusnak kellene telepítenie, így minél egyszerűbb, egyklikkesebbre kellene venni a dolgot.
Attól, hogy neked nem tetszik, az egy darab Access DB még jó megoldás lehet :-P De fogod, összerakod xampp-ben a cumót, becsomagolod, megnézed, mit rámolt a registry-be, azt is mellérakod, csinálsz egy tetszőleges telepítőkészítővel egy csomagot, amit katt-katt, és ott van a cucc.
Access DB jó megoldás lenne, ha sikerülne elkészíteni :) Oké, nem kell hozzá egy nagy tudomány, de sok kedvem nincs doksikat olvasgatni, hogy hogyan is működik.
Emlékeim szerint miután kitaláltad, mit és hogyan, csak kattogtatni kell :-D
Windowsra? (mert ezt nem írtad).
Egyébként van egy csomó installer készítő keretrendszer windowsra, az alá az egész kupacot be tudod tolni. A legfogósabb része a "service", azaz pl. a mysql elindítása bootkor. Nem pazarlás amúgy a teljes tomcat, mysql futtatása egy kliensgépen?
--
Gábriel Ákos
http://i-logic.hu
esetleg mehetne embedded mysql fele.
Azért kézzel felmásolni egy másik szoftver fájljait elég őrült dolog. Ha a mysql telepítője tud silent install módot, akkor avval kell indítani. Ha nem, akkor az open source verzió telepítőjébe bele kell ezt építeni. Én pl. a smartmontools-szal játszottam ezt el, örültek a patch-emnek, én meg szépen be tudtam tenni az SW deploy rendszerbe.
--
joco voltam szevasz
A kérdező ezt kérdezte :)
És ha tesztelt működő verziót akar kiadni, akkor azt valóban úgy kell, hogy egy bizonyos verziót odarak, nem pedig bármit letölt a user.
Amivel szépen el lehet játszani (nem szoktak) hogy ki melyik portot foglalja el és erről hogyan tudjon a többi komponens, mert ugye nem kizárható, hogy az ember gépén már pont a kiszemelt porton figyel valami.
--
Gábriel Ákos
http://i-logic.hu
Windowsra keresek valamit, igen:) Azt hittem, hogy erre már van valami out-of-the-box megoldás, hiszen XAMPP pl, van már (nem telepítve, hanem egyáltalán létezik egy ilyen telepítő), innentől már csak egy lépés egy customizált környezet létrehozása, amibe csak a war-t kell beletolni (gondolom).
Gondolkoztam a XAMPP-os verzión is, de ott is sokat kell ugye konfigurálgatni, szóval ez se játszik.
Egyébként a bootoláskori service indulás se feltétlenül igény, hiszen alapvetően az én lustaságom az, amiért feltettem ezt a kérdést, ti.: barátnőmnek el kéne készítenie egy baromi egyszerű Access adatbázist, ami amúgy oké is, de nekem nagyon nem tetszik, meg nehézkes, meg minden baj van vele, úgyhogy felajánlottam, hogy Spring Roo-val összedobok egy webappot rá pillanatok alatt (jól jön a gyakorlás). Viszont innentől kezdve vagy felteszik egy online host-hoz, amit nem biztos, hogy akarnak egy lokális adatbázisnál, illetve fizetni is kell érte, vagy valahogy tudok tetszőleges Windowsos gépre két kattintással deployolni.
Szóval az, hogy rá kell kattintaniuk egy parancsikonra, ami elindítja a service-t és esetleg feldobja az oldalt a default böngészőben még talán jó is, nem kell URL-eket megjegyezgetniük.
Fura, hogy pont erre nincs triviális megoldás a webappok korában:)
Persze, mert a WEBappok korában az appok a WEBen vannak, nem a desktopon és accessben :)
Innosetup-hoz lehet pascal startup script-eket írni, egy rakás dolgot tud - nem tudom neked megfelelne-e, de sok mindent lehet benne.
Gondolom azért nincs mert webapp és azt az ember általában nem a local gépen futtatja hanem egy szerveren amit meg nem ő felügyel
Esetleg dobd össze SQLite-ra GUI-s alkamazásnak, ha meg tudod tenni. Az igazi célnak lehet, hogy jobban megfelel.
(Csak egy kósza ötlet részemről, egyáltalán nem biztos, hogy van értelme számodra.)
Zavard össze a világot: mosolyogj hétfőn.
(fentre is)
Jó lenne az is, de azért lenne jobb ez a megoldás, mert valamilyen szinten több gépről is el szeretnék érni. Most egy megosztott mappa + DB file-lal oldanák meg, ami nem épp a legjobb megoldás.
Az is egy lehetseges megoldas, hogy beagyazott tomcatet meg valami lightweight sql megoldast hasznalsz, az egeszet becsomagolod jar-ba. Jar-okra mar vannak toolok amik tudnak exe-t kesziteni beloluk (bar nyilvanvaloan a javanak telepitve kell lennie a gepre.) En szemely szerint tomcat helyett jetty-t hasznalnek, mysql helyett h2db-t.
Jar to exe: http://stackoverflow.com/questions/2011664/compiling-a-java-program-int…
Jetty: http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty
H2DB: http://www.h2database.com/html/main.html
+1
Köszi, ezeknek utánanézek!
+1, ez a jó megoldás. Esetleg még egy installer-t csinálhat, de az már tényleg nagy igényesség :)
Nálunk a PM-eknek van egy install.cmd.
A működés előfeltétele, hogy lokálisan legyen feltelepítve egy adatbázis, vagy a belsőn hálóról adjunk meg egyet.
Ezek után az install.cmd a következőket tudja:
- CVS-ből kicheckeli a porjektet
- JBoss-t lehúzza a belső hálóról
- meghívja a megfelelő ant scripteket amik:
- adatbázisba létrehozzák a usert, betöltik a migrációkat
- deployolják a projektet JBoss alá
- ezek után a JBoss run.bat parancsával indul a szerver
Ez egy tökéletes megoldás lenne nekem is, de sok reszeléssel jár :)
cvs -> git
ant -> gradle ? :)
--
http://neurogadget.com/
Nézd meg a jenkinst, hogy oldja meg az Executable WAR-ját.
Gyakorlatilag java -jar jenkins.war -ral futtatható.
Ha nem ragaszkodsz mysqlhez, akkor egy embedded java db-vel gond nélkül meg tudod oldani amit szeretnél. Tomcat helyett winstone van jenkinsben, de pl. jettyt sem ördöngősség beágyazni, ha a winstone nem elég jó.
Üdv,
Gergely
A Java redistribute-olható elvileg. Tehát meg tudod azt csinálni, hogy mindent, ami az alkalmazásod futtatásához kell, azt egybe csomagolod. Így nem kell semminek másmilyennek lenni, mint a fejlesztői gépeden. Ennek persze ára lesz az, hogy nagyon nagy lesz az alkalmazásodat terjesztő csomag, viszont nagyon kevés munkával összerakható. Kis szériánál és toleráns felhasználónál éri meg.