Mam pytanie jak to jest z ta Java? Czytałem ze np Eclipse albo NetBeans sa napisane w Javie, jesli sa napisane w Javie to dlaczego pliki uruchomieniowe tych aplikacji sa *.exe??
Jedyne co jest w tym exe to ustalenie classpath oraz innych zmiennych/switchy i wywolanie procesu javy z klasa do uruchomienia jako parametr, ewentualnie jakis splash jeszcze itp. Zrobione to jest tylko i wylacznie po to aby sprawialo wrazenie czegos natywnego dla danego systemu.
:: napisał(a)
Jedyne co jest w tym exe to ustalenie classpath oraz innych zmiennych/switchy i wywolanie procesu javy z klasa do uruchomienia jako parametr, ewentualnie jakis splash jeszcze itp. Zrobione to jest tylko i wylacznie po to aby sprawialo wrazenie czegos natywnego dla danego systemu.
qmam, a ten *.exe to w czym napisany i jak? mozna gdzies kod zrodlowy zobaczyc?
i to jest tak zrobione tylko i wylacznie po to zeby sprawialo wrazenie programu tradycyjnego?
Mozesz probowac zdekompilowac albo cos. Ja to czytalem dawno temu, jak sam mialem podobne pytanie.
Co do drugiego pytania, odpowiedz sobie na pytanie - piszesz aplikacje na windowsa, w javie, co jest najlatwiejsze i najbardziej oczywiste dla usera aby uruchomic aplikacje:
- kliknac w jara (musi byc skojarzenie jara z programem java.exe lub javaw.exe, poszukaj na forum i sprawdz ile osob ma z tym problemy)
- kliknac w plik .bat
- kliknac w plik .exe
?
To samo mozna osiagnac za pomoca wszystkich 3 mechanizmow, ale do czego sie userzy windy najbardziej przyzwyczajeni? To samo oczywiscie dotyczy linuxow i innych xsow, przy czym tam skrypty sh/bash czy inne sa na porzadku dziennym (aczkolwiek eclipse 3.5 ma binarke a nie skrypt).
Było już niedawno o tworzeniu exe:
http://4programmers.net/Forum/viewtopic.php?id=132611
Generalnie chodzi tu o ułatwienie uruchamiania. Plik exe może mieć zaszyte pewne mechanizmy, które pozwalają na np. sledzenie programu jako osobnego procesu pod nawą pliku exe a nie javaw/java.
Jeszcze jeden bajer co znalazłem. Plugin do mavena, który robi nam exe http://9stmaryrd.com/tools/launch4j-maven-plugin/
dzieki za odpowiedzi :)
Zaraz, zaraz... ja tu widzę coś ciekawego...
Kiedy użyjemy l4j, to rzeczywiście exek uruchamia Javę.. i na liście procesów widnieje javaw.exe.
Ale Eclipse? Nie.. na liście nie widnieje żadne java/javaw.exe, tylko eclipse.exe, a aplikacja w pełni działa.
Jak to rozumieć? Eclipse używa JVM bez osobnego procesu dla niej?