*.exe ot JAVA

8 отговора 617 прегледа
#1

*.exe ot JAVA

Имам една програма на йава, т.е. имам я като .йава и .йар файл. Та възможно ли е, да се стартира на компютър, където няма инсталирана йава. Т.е. въпроса по общо е: може ли йава да генерира .ехе файл?

Отговор
в отговор на EroS #2

Re: *.exe ot JAVA

Може.

Отговор
в отговор на Пeнчo #3

Re: *.exe ot JAVA

А ще ми кажеш ли как?

Отговор
в отговор на EroS #4

Re: *.exe ot JAVA

Един начин е със [линк]
Това ти дава възможност да пакетираш цялата Java с твоята програма. Работи.

Друг начин е с компилация на Java към native код. Това не съм го правил. Предполагам, че трябва да продуцира по-малко по размер executable.
[линк]

Отговор
в отговор на EroS #5

Re: *.exe ot JAVA

Разгледай виртуалните машини CVM или PERC. И двете са от първия тип, за който казва Пенчо, но специално CVM-а е доста малка и бърза ВМ. Можеш да погледнеш и gcj - прави малък изпълним файл (HelloWorld излиза към 10К) но пък за сметка на това имаш динамична връзка към libgcj.so, който при мен е над 11 меги.

Отговор
в отговор на тepмит #6

Re: *.exe ot JAVA

Мерси и на двамата. ще пробвам вероятно и двата начина, но хубавото при моя случай е, че не трябва да се притеснявам толкова за размера на файла, а за времето за което ще се изпълни програмата + това, за което щте я пусна нали. Мерси пак!

Отговор
в отговор на тepмит #7

Re: *.exe ot JAVA

Или просто си копираи ЙРЕ директорията с приложението

Отговор
в отговор на EroS #8

Re: *.exe ot JAVA

[линк] виж тук... обаче искат доста кинти.... тая програма можеш да я потърсиш из п2п мрежите сигурно ще изскочи отнякъде... щото навремето и кракчета нямаше.

Отговор
в отговор на ches #9

Re: *.exe ot JAVA

Не мисля, че е точно такава идеята
PERC и CVM специално имат възможност да направят АОТ компилация на приложението ти и да го забият в един статичен изпълним файл заедно със всички зависимости от ВМ-то, които ползваш. Аз лично съм фен на CVM, защото дава доста добра поддръжка откъм джава библиотеки и е малка като размер - примерно от 300К мой jar само с класове, без ресурси, получавам около 2.5 МБ статичен изпълни файл, което не е никак зле, като се има предвид колко е голям само rt.jar на j2se.

С Excelsior се мъчих преди година-две за последно, тогава имаха доста проблеми с динамичното зареждане на класове, но предполагам че вече би трябвало да са доста по-добре.

Отговор