[ antraks @ 12.04.2020. 19:23 ] @
U Netbeans-u okruzenju sam napravio aplikaciju za neke svoje licne potrebe, koja je povezana na mysql bazu podataka, i upisuje i cita neke vrijednosti i cuda. Da li moze na neki nacin da se napravi standalone aplikacija (exe fajl) koja ce moci da se koristi i na drugim racunarima, gdje nema niti netbeans niti mysql server?? Ako moze, na koji nacin?
JAR fajl se vec generise tokom build-a, ali i on korisi vec upaljen mysql server. Nasao sam neke opcije na "propertis" projekta u sekciji "deployment" ali ne znam da podesim.

Da li mozda treba modifikovati projekat tako da on pri prvom pokretanju sam kreira neku bazu podataka koju se kasnije da koristi? Tako nesto sam procitao na netu.

Uglavnom koji je najbolji nacin, i najpravilniji nacin, da se to uradi?
[ Branimir Maksimovic @ 12.04.2020. 20:07 ] @
Ako koristis mysql bazu, naravno da baza mora postojati na sistemu, to je odvojen proces.
[ antraks @ 12.04.2020. 20:42 ] @
Postoji ona u sklopu mysql servera i moze joj se pristupiti dokle god je server pokrenut. Cim ugasim server ni aplikacija ne radi.
Moze li se nekako ta baza napraviti da postoji nezavisno od mysql servera? Nisam to jos pokusavao pa ne znam kako to funkcionise.
[ djoka_l @ 13.04.2020. 00:39 ] @
Zašto isključiti samo MySQL server. Napravi aplikaciju kojoj ne treba ni operativni sistem! Možda ni procesor?

1. Od NetBeans aplikacije ne može da se napravi exe.
2. MySQL baza ne može da se koristi ako ne postoji MySQL server. Važi i za većinu drugih baza. SQLite je "baza" koja radi na nivou fajlova, s tim da se u projekat linkuju SQLite biblioteke.
[ bokinet @ 13.04.2020. 07:53 ] @
@djoka_l - sve sto rece tako i stoje stvari.

Elem, da ne bude i ja i Djoka tvrdimo pazar, ako se bas hoce da sve bude tkz. jedan file onda moze se pokusati sa nekim alatima koji omogucavaju da se spakuju sve potrebne stvari u tkz. virtualni sistem.
Treba imati u vidu performanse.

Evo na primer:
turbo.net/studio
[ dejanet @ 13.04.2020. 08:22 ] @
Dobro, covek se nije najbolje izrazio, ali ko god je ikada radio u javi zna o cemu se radi.

Elem za exe launch4j.
MySQL ostaviti ako je potrebno da se vise client-a kaci na db.
Ako se kaci samo jedan - tvoja java app, onda vredi migrirati na sqlite.

Mislim da se upotrebom launch4j lako mogu spakovati app jar i sqllite files. Takodje postoji opcija da se spakuju i java jre, tako da nema potrebe za instalacijom jave na drugoj masini.

Ovako sam radio pre 10+ godina, mozda sada postoji bolje resenje...
[ mikikg @ 13.04.2020. 09:45 ] @
SQLite je resenje za to sto ti hoces - to je "embedded" baza podataka, nema posebnih procesa niti servera kao sto to ima kod MySQL, jednostavno postoji specifican fajl koji smestis u neki svoj resource folder u okviru tvog projekata i nadalje operises preko postojecih API komandi i SQL upita.

Postoji i Berkeley DB (BDB) baza podataka koja radi isto u "embedded" rezimu ali to je malo veca kompikacija obizrom da ona nije SQL kompatibilna (high-performance embedded database for key/value data)
[ antraks @ 14.04.2020. 00:03 ] @
To je ono u principu sto sam i mislio ali se nisam dobro izrazio jer nisam dosad nikako radio na taj nacin.
Sad cu preci na SQLite pa napraviti i bazu i sve kako ide, pa cu pokusati onda to sve spakovati u exe ili jar fajl (nije toliko ni bitno).
Hvala na pomoci, to je ono sto sam trazio.
[ dule_ns @ 18.04.2020. 21:24 ] @
Citat:
dejanet:
Dobro, covek se nije najbolje izrazio, ali ko god je ikada radio u javi zna o cemu se radi.

Elem za exe launch4j.
MySQL ostaviti ako je potrebno da se vise client-a kaci na db.
Ako se kaci samo jedan - tvoja java app, onda vredi migrirati na sqlite.

Mislim da se upotrebom launch4j lako mogu spakovati app jar i sqllite files. Takodje postoji opcija da se spakuju i java jre, tako da nema potrebe za instalacijom jave na drugoj masini.

Ovako sam radio pre 10+ godina, mozda sada postoji bolje resenje...




Antraks, nisam siguran da li si u potpunosti shvatio šta znači što sam boldovao, ali u principu bilo šta što napišeš u javi neće raditi ukoliko na toj mašini nije instaliran JRE odgovarajuće verzije. A obzirom da su ovi iz Oracle-a svašta nešto menjali u licenciranju pre nekih godinu ipo dana raspitaj se da li imaš pravo da distribuiraš njihov JRE uz svoj program i pod kojim uslovima (ukoliko planiraš neku komercijalnu upotrebu).