"Przenośny" program w Javie

0

W jaki sposób można stworzyć w Javie program, który możnaby uruchamiać po prostu otwierajac jego skrót czy jakiś plik, a niekoniecznie z wiersza polecenia? Nie mam też na myśli appletów. Chodzi o to czy można stworzyć program i zapisać go tak, żeby można go było wysłać, dać na penie czy płytce dowolnej osobie tak, żeby mogła go otworzyć (posiadając oczywiście oprogramowanie Javy).

0

Jeżeli masz poprawnie skonfigurowany system to dwuklik na pliku JAR powinien go odpalić. Problem byłby jeżeli twój program jest konsolowy. Wtedy pasuje albo odpalić JAR z wiersza polecenia. Program może się zorientować czy jego JVM ma dołączoną konsolę za pomocą metody System.console()

0

Powinno się otwierać jak Wibowit wspomniał. Gdyby jednak coś u końcowego użytkownika nie działało, często przy dystrybucji javowych programów można znaleźć dołączone pliki startowe *.bat i *.sh

0

W takim razie, podsumowując, co trzeba zrobić po napisaniu programu, żeby mieć (względną :P) pewność żeby każdy mógł go otworzyć bez problemu? Po dwukliknięciu JARu

0

Ty nic nie możesz zrobić (poza utworzeniem prawidłowego jara). Końcowy użytkownik może poprawić konfigurację swojego komputera.

0

Jak już ktoś wspomniał można do aplikacji dodać JVM i pliki wsadowe/skrypty które sobie to ladnie rozpakują i ustawią zmienne środowiskowe. Minus jest taki ze JVM zapewne zajmuje znaczniej wiecej niż twoja aplikacja...

0

Można też użyć GCJ lub http://www.excelsior-usa.com/jet.html do skompilowania kodu Javowego do EXEka.

0

GCJ - no ciekawe rozwiązanie tylko czemu płatne i czemu takie niebotyczne sumy? Atut tego by wyeliminować zagrożenie prostej dekompilacji jest jednak bardzo kuszący. Tylko że tak po prawdzie to chyba jest tak że on powstały bajtkod javowy "przepisuje na C" - mylę się? Ale i tak bardzo fajne rozwiazanie tylko skąd oni wzieli te ceny? (taa gdyby się szef zgodził na kupno:P ). Szukałem odpowiednika opensource i nie znalazłem a wy?

Co do załaczania wirtualnej maszyny z aplikacją - jak to jest z licencją?

0

Jestes pewien ze mowisz o tym samym GCJ?

0

Ano zasugerowałem się. Chodziło mi o link wstawiony przez wibowita

0

http://en.wikipedia.org/wiki/GNU_Compiler_for_Java - jakość nie najlepsza, ale (jak mówi wiki) da się skompilować nawet Eclipse.

0

Na uczelni na niektórych linuksach są dwie javy: oracle(sun) i gcj. Programy z GUI skompilowane gcj (uruchamiane gdziekolwiek) działają źle (tzn. niezgodnie z dokumentacją). Wygląd też mają nieodpowiedni, pewnych komponentów po prostu nie widać.

0

To co chcecie powiedzieć że nie ma żadnej alternatywy open-source lub przynajmniej na "fajnej" licencji tego Excelsior JET?:/

0

Witam.
Do autora postu, jeśli problem nadal aktualny, to musisz stworzyć ze swojego programu plik jar.
Bo nigdzie nie wyczytałem, że to zrobiłeś.
W pliku jar musisz mieć katalog META-INF a w nim plik MANIFEST.MF.
W pliku tym trzeba wpisać: Main-Class: pl.moja.paczka.MojaKlasaMain

Pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1