Plik .exe bespośrednio z plików .java.

Odpowiedz Nowy wątek
2019-05-09 09:16
0

Czy istnieje program lub wtyczka do Eclipse, który tworzy plik .exe bez tworzenia pliku .jar? Co właściwie robi JVM , gdy się klika w plik .jar? Ładuje klasy, wypakowuje do temp?

Pozostało 580 znaków

2019-05-09 09:49
0

Tu masz opisane co robi JVM:
https://docs.oracle.com/javase/specs/jvms/se12/html/index.html

Ale generalnie nie musi nic wypakowywać.


Bardzo lubie Singletony, dlatego robię po kilka instancji każdego.
edytowany 1x, ostatnio: jarekr000000, 2019-05-09 09:49
to mu podałeś konkretne miejsce :D :D - Pinek 2019-05-09 10:25
Korpo pomoc pelna geba 😉 - vpiotr 2019-05-09 12:56

Pozostało 580 znaków

2019-05-09 10:32
0

Jak budujesz projekt Mavenem w Eclipsie to możesz użyć tego: http://launch4j.sourceforge.net/. Podpinasz pod projekt i w targecie wyrzuca Ci jara jak i exe'ka.

Pozostało 580 znaków

2019-05-09 10:32
1

W javie nie kodze ale nie chodzi po porstu o wymagane srodowisko uruchomieniowe? Taki C# zostawia pliki w formie .dll potrzebne do uruchomienia aplikacji i potrzebny w przypadku c# jest .net framework. To normalne ze aplikacje po za plikiem .exe maja swoje wlasne pliki potrzebne do uruchomienia :)

Tutaj mamy przewagę Delphi/Lazarusa: dajesz plik EXE i niczego Ci do szczęścia nie potrzeba, żadnych dotnetów czy innych RTL :P - cerrato 2019-05-09 11:04
Delphi. Pamiętam z lat 90 tych, że kilka razy okazało się na demo... że na kompie nie ma zainstalowanych jakiś dllek i wszystko szło się rypać. Nawet w pewnym momencie miałem na testy specjalny komp z gołym windows, żeby takie programy testować. (Bo u każdego developera zawsze działało, bez problemu). - jarekr000000 2019-05-09 15:00
Ale Szanowny Panie - dll a RTL czy jakieś VC redist to są zupełnie inne tematy :P - cerrato 2019-05-09 16:15

Pozostało 580 znaków

2019-05-09 10:36
0

Czyli nie powinno byź różnicy w czasie otwierania programu miedzy .exe, a .jar?

Wyczuwalnej raczej nie :D ale niech sie eksperci od Javy wypieordza ja tym pisz tylko w tej "skryptowej" wersji - Akihito 2019-05-09 10:39
@Akihito: "Skryptowej wersji"... piłeś - nie pisz na forum ;) - Lubię Naleśniki z Dżemem 2019-05-09 10:53
dlatego dalem w cudzyslowie :P - Akihito 2019-05-09 10:54
No i dobrze, bo już chciałem kazać ci iść pobiegać ;) - Lubię Naleśniki z Dżemem 2019-05-09 11:14

Pozostało 580 znaków

2019-05-09 11:30
0

Dzięki.

Pozostało 580 znaków

2019-05-09 11:35
1

Otwieranie .jar jest jak otwieranie .jpg - system szuka sobie skojarzonego programu do odpalania JARków bądź JPGów.

.jpg też możesz zamienić na .exe, ale pytanie jak. Możesz do pliku .exe zapakować .jpg razem z Photoshopem i wtedy po odpaleniu tego .exe będzie się odpalać Photoshop wyświetlający JPGa. Takie rozwiązanie będzie bardzo zasobożerne. Szybsze byłoby zostawienie .jpg i odpalenie go np przez wbudowaną w system pokazywarkę zdjęć.

Co właściwie robi JVM , gdy się klika w plik .jar? Ładuje klasy, wypakowuje do temp?

JVM nie rozpakowuje wstępnie JARów sam z siebie, ale niektóre biblioteki same to robią. Np w JARze jest 5 EXEków jako zasoby i żeby je odpalić trzeba je wypakować. Sam JVM natomiast traktuje JAR jako zwykłego ZIPa i na bieżąco strumieniuje zasoby do pamięci. Stąd np różnice w wydajności w zależności od tego czy JAR ma włączoną kompresję czy nie. Kompresja zwalnia odczytywanie JARa. Przykład tutaj: Program kompilowany chodzi szybciej niż budowany

PS:
JARa da się zamienić na natywną binarkę z wbudowanym okrojonym JVMem bez JITa i np dynamicznego ładowania bajtkodu, ale za to z całym bajtkodem skompliowanym do kodu natywnego. Działa tak https://www.graalvm.org/docs/reference-manual/aot-compilation/ Są jednak chyba też inne rozwiązania jak https://www.excelsiorjet.com/ które mają chyba więcej możliwości. Są to jednak rozwiązania niszowe, gdyż pierwsze jest jeszcze we wczesnej fazie rozwoju, a drugie kosztuje gruby hajs.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 6x, ostatnio: Wibowit, 2019-05-09 11:42

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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