LINUX.ORG.RU
 

Статья "Java to EXE" на Javalobby


0

0

В статье рассматриваются различные методы преобразований Java-приложений в native исполняемые файлы: от программ-обёрток (wrappers) до статических Java-компиляторов. Обсуждаются плюсы и минусы каждого подхода, при этом делается внушительный обзор существующих коммерческих и бесплатных программ-утилит.

>>> Статья

anonymous ()
Проверено: Shaman007 (23.06.2005 17:10:06)

ЗАСТАВЬ КОМПЬЮТЕР ПОЛИВАТЬ ОГОРОД

автоматизация своими руками: электроприборы под контролем компьютера
beware of programmers who carry screwdrivers!
http://www.unicontrollers.com/products/unc01x

[#]  
klalafuda

Re: Статья "Java to EXE" на Javalobby

с точки зрения человека, далекого от java, приятная статейка. познавательная и мозг не напрягает.

// wbr

*## ()
[#]  

Re: Статья "Java to EXE" на Javalobby

где бы прочитать аналогичную статью для перла?

anonymous ()
[#]  

Re: Статья "Java to EXE" на Javalobby

Где бы взять EXE то Java?

** ()
[#]  

Re: Статья "Java to EXE" на Javalobby

интересно чем с++ не устраевает?

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 19:34:04  

Re: Статья "Java to EXE" на Javalobby

C++ не устраивает высоким порогом входа, непереносимостью, огромным количеством платных библиотек, отсутствием промышленного стандарта доступа к БД (JDBC) и устаревшими архитектурными решениями типа ручного управления памятью.

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 20:24:33  

Re: Статья "Java to EXE" на Javalobby

Высокий входной порог - это хорошо. Плохо, когда программировать лезут безграмотные тупицы, их надо от программирования ограждать сложностью средств разработки.

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 20:49:56  

Re: Статья "Java to EXE" на Javalobby

> граждать сложностью средств разработки

вы - идиот. оградитесь от меня!

--седайко стюмчик

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 21:00:56  

Re: Статья "Java to EXE" на Javalobby

>вы - идиот. оградитесь от меня!

Это - ПЯТЬ!

> граждать сложностью средств разработки

А жить нада в пещерах, жрать непрожаренное мясо, зато зубы будут белые и блестящие. Ходить в шкурах и с деревянными палицами. И песать каждый день по 100 циклов for (i=1, i<100, i++) {} вместо того, чтобы ДУМАТЬ, как этот мартышкин труд переложить на быстрый мозг ЦПУ.

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 21:11:04  

Re: Статья "Java to EXE" на Javalobby

А вот это верно. Поэтому писать надо на Python, а не на уродливой Java.

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 21:16:48  

Re: Статья "Java to EXE" на Javalobby

> а не на уродливой Java

Правильней "на уродливой низкоуровневой Java, в которой отсутствуют средства метапрограммирования".

P.S. Отстой это рулез. Рулез это отстой.

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 21:16:48  

Re: Статья "Java to EXE" на Javalobby

>Поэтому писать надо на Python, а не на уродливой Java.

У Python нет JDBC, и только PyPy вместо JVM

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 21:47:59  

Re: Статья "Java to EXE" на Javalobby

> и только PyPy вместо JVM

JVM таки написана на жабе? Чего только на ЛОРе не узнаешь...

anonymous ()
[#]  

Re: Статья "Java to EXE" на Javalobby

EXE ЗЛО

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 20:24:33  

Re: Статья "Java to EXE" на Javalobby

>C++ не устраивает высоким порогом входа

похоже анонимус не вошел :)

> непереносимостью

вообще-то с++ - стандартизованный язык и программа, написанная на с++ - работает на любой платформе, имеющей с++ компилятор, соответствующий этому стандарту :)

>огромным количеством платных библиотек

с каких пор это стало недостатком? ;)

>отсутствием промышленного стандарта доступа к БД (JDBC)

лично я проблемы не вижу :) Кстати, можно ссылочку на сертификацию скажем ISO этого "промышленного стандарта"?

> и устаревшими архитектурными решениями типа ручного управления памятью.

и чем это они устаревшие, эти решения, и кто это определил?

* ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Displacer 23.06.2005 23:15:26  

Re: Статья "Java to EXE" на Javalobby

> вообще-то с++ - стандартизованный язык и программа, написанная на с++ - работает на любой платформе, имеющей с++ компилятор, соответствующий этому стандарту :)

то я слышал вопли про 2.95, а теперь про 3.4 постоянно от этих горе-плюсовиков... сам то с java 1.4 на 5 совсем без проблем пересел :)

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 23.06.2005 21:11:04  
atrus

Re: Статья "Java to EXE" на Javalobby

> вместо того, чтобы ДУМАТЬ, как этот мартышкин труд переложить на быстрый мозг ЦПУ.

Думать - это хорошо, это правильно. Полезная вещь. Вот только нередко получается, что при разглядывании этих "продвинутых" решений (нет, не всех, но довольно некоторых) создаётся впечатление, что "аффторы" вместо облегчения работы программера занимались усложнением и умножением сущностей... :-(

***** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от atrus 23.06.2005 23:43:23  

Re: Статья "Java to EXE" на Javalobby

> Думать - это хорошо, это правильно. Полезная вещь. Вот только нередко получается, что при разглядывании этих "продвинутых" решений (нет, не всех, но довольно некоторых) создаётся впечатление, что "аффторы" вместо облегчения работы программера занимались усложнением и умножением сущностей... :-(

"аффторы" языка (почти любого, обобщенного языка) уже устали повторять, что если не умеешь пользоваться какой-то фичей языка, которая "усложняет" тебе жизнь своим существованием - не пользуйся ей. Пользуйся тем, что понимаешь. Соответственно и самим языком можно пользоваться или не пользоваться. Не знаешь с++ - пиши на Java, Python или хоть Visual Basic :) Только не говори при этом про ущербность языка, которого не понимаешь :)

* ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Displacer 23.06.2005 23:48:57  

Re: Статья "Java to EXE" на Javalobby

Ущербен тот язык, который не даёт возможности делать сложные вещи простыми. C++ позволяет создавать абстракции довольно высокого порядка, и в этом он превосходит Java, но отстаёт и от Python, и от Lisp, и даже от Tcl. Очень сильно отстаёт.

()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 23.06.2005 23:50:55  

Re: Статья "Java to EXE" на Javalobby

Сколько вылил всего на жаву и с++ одновременно :) И при этом ничего конкретного. Цель языкового средства - не создавать абстракции, а получить за разумное время конечный продукт :)

Я не берусь в данном случае судить кто кого превосходит и от кого отстаёт, но факт в том, что язык с++ пока что имхо позволяет решать более широкий круг задач, чем всё перечисленное далее. Жава и Python в этом плане, нужно признать, довольно близко приблизились к нему.

* ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Displacer 23.06.2005 23:57:36  

Re: Статья "Java to EXE" на Javalobby

Попрошу без вызывающе неверной информации.

Язык C++ и в подмётки не годится языку Common Lisp. По всем параметрам. Кроме вышеупомянутого порога вхождения. И всё - благодаря как раз возможности реализации абстракций высшего порядка. Пока программист на C++ будет ручками воевать со всякими низкоуровневыми проблемами, программист на Лиспе просто опишет формулировку задачи своими словами, и она же будет почти готовым решением. Коротко, быстро, дёшево.

()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 24.06.2005 0:07:01  

Re: Статья "Java to EXE" на Javalobby

Я говорил о решаемом круге задач. Давай еще вспомним про SmallTalk, вот уж куда крутые абстракции, с++ отдыхает :) Но кто что слышал про современные приложеня на SmallTalk или Lisp? Не считая емакса, разумеется.

В чем "вызывающе" или хотя бы просто неверная информация? ;)

* ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Displacer 24.06.2005 0:10:52  

Re: Статья "Java to EXE" на Javalobby

> Я говорил о решаемом круге задач.

И какие же задачи лучше решать на C++, чем на Лиспе? Назови хотя бы одну, героем будешь.

> Но кто что слышал про современные приложеня на SmallTalk или Lisp?

То, что ты ничего не слышал и мало что знаешь - твои личные проблемы, не так ли?

> В чем "вызывающе" или хотя бы просто неверная информация? ;)

В якобы превосходстве этого отстойного C++.

()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 24.06.2005 0:19:05  

Re: Статья "Java to EXE" на Javalobby

> И какие же задачи лучше решать на C++, чем на Лиспе? Назови хотя бы одну, героем будешь.

Давай операционную систему напишем на лиспе, как тебе примерчик, а? Хотя бы уровня Hurd.

> То, что ты ничего не слышал и мало что знаешь - твои личные проблемы, не так ли?

Боюсь я не один такой, кто не слышал и мало что знает. Я бы и рад бы согласиться, но не могу. Вот уж такой я деревенский человек, не видел я такого ПО.

> В якобы превосходстве этого отстойного C++.

я еще раз повторяю, никогда, _никогда_ не называй вещь отстойной, без достаточных на то оснований. Вот это как раз и называется "вызывающе неверная информация".

* ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Displacer 24.06.2005 0:25:09  

Re: Статья "Java to EXE" на Javalobby

> Давай операционную систему напишем на лиспе, как тебе примерчик, а?

Операционная система на Лиспе образца 1985-го года по возможностям превосхидила большинство современных, ныне здравствующих. И уж тем более игрушкам вроде Hurd до такого уровня никогда не дотянутся.

> Боюсь я не один такой, кто не слышал и мало что знает.

Грамотных людей вообще мало. Система образования у нас больная на все ноги.

> я еще раз повторяю, никогда, _никогда_ не называй вещь отстойной, без достаточных на то оснований.

Попрошу сбавить менторский тон. Не стоит применять его на фоне столь очевидной собственной безграмотности.

У меня есть все основания называть C++ отстойным.

Кстати. На Visual Basic пишут ещё больше, чем на C++ или Common Lisp. Он лучше, чем C++, да?

В общем, гражданин. Давайте сюда объективные преимущества C++ перед Common Lisp. Не надо петь про то, сколько софта на чём написано - это не серьёзный подход. Анализируем сами языки.

()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 24.06.2005 0:19:05  

Re: Статья "Java to EXE" на Javalobby

Ну что флеймить по поводу и без повода. Каждое решение приспособлено для своих типов задач, и именно их удобно их решать. Бесполезно сравнивать Java и C++, то всё равно что сравнивать POSIX и WIN32. Понятно, что Java - это policy и во многом это плюс для широкого класса задач (например embedded). C/C++ это скорее tools, соответственно нужно уметь этим пользоваться, это даёт большую свободу реализации задачи, но во многих случаях это минус, особенно когда над проектом работает куча народа с "разным" мышлением (а оно обязательно будет разным, если это не просто тупые кодеры).

А переносимость - это полное заблуждение. Перенести под собранную из разных компонентов POSIX-совместимую систему прогу на с/c++ на порядок проще, чем JVM, ибо её там даже компилить не обязательно - можно собрать на хост-системе. А вот пойдите-ка перенесите хотя-бы за пару недель JVM скажем на L4...

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 24.06.2005 0:29:56  

Re: Статья "Java to EXE" на Javalobby

> В общем, гражданин. Давайте сюда объективные преимущества C++ перед Common Lisp. Не надо петь про то, сколько софта на чём написано - это не серьёзный подход. Анализируем сами языки.

А зачем нужен язык без "codebase"?

Ну это так, к слову. :-)

()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 24.06.2005 0:29:56  

Re: Статья "Java to EXE" на Javalobby

боюсь вследствие собственной безграмотности объективно могу постараться прокомментировать только одно:

> Кстати. На Visual Basic пишут ещё больше, чем на C++ или Common Lisp. Он лучше, чем C++, да?

Да. Лучше. Раз пишут больше - значит лучше. Только вот софт у меня на компьютере написан в основном на Си и С++. Изредка встречаются Perl, Java, иногда Python. Практически никогда - Visual Basic. B уж совсем никогда - lisp. За исключением емакса, разумеется.

По поводу же операционной системы, которая написана на лиспе 1985го года выпуска и лучшей современных - это таки да - это таки огромный пробел в образовании. Чего врать ;)

* ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от chinpunkanpun 24.06.2005 0:38:12  

Re: Статья "Java to EXE" на Javalobby

Ну ну ну. И большую же ты "codebase" на C++ заюзать сможешь... С++ - это тебе не Perl с его CPAN-ом, культуры написания реюзабельных компонентов в среде приплюснутых не наблюдается.

С другой стороны, есть http://cliki.net/

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Displacer 24.06.2005 0:39:50  

Re: Статья "Java to EXE" на Javalobby

> Да. Лучше. Раз пишут больше - значит лучше.

Нет. Не лучше. Просто это означает, что он более разрекламирован среди ламеров. А ламеров - гораздо больше, чем хороших и умных людей. На порядки больше.

> B уж совсем никогда - lisp. За исключением емакса, разумеется.

Maxima или Axiom не используем, да?

Софта на Лиспе мало, но качество его значительно превосходит многочисленные Сишные поделки. И мало его не от того, что он плохо подходит для написания софта, а от того, что мало тех, кто умеет писать софт. И научиться никак не труднее, чем тому же С++ - просто ламеры не в курсе, что надо изучать Common Lisp, и тогда будет им счастье.

> По поводу же операционной системы, которая написана на лиспе 1985го года выпуска

Что, ни разу Symbolics живьём не наблюдал? Зря, зря. Очень впечатляет.

Да, вот ещё: http://www.paulgraham.com/

()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 24.06.2005 0:29:56  

Re: Статья "Java to EXE" на Javalobby

> Операционная система на Лиспе образца 1985-го года по возможностям превосхидила большинство современных, ныне здравствующих.

А где про это почитать можно?

З.Ы. Я понимаю, что в данной теме сабж является офтопиком, но зачем нужно явовые программы самостоятельно транслировать в машинный код? Это же убивает основное преимущество явы --- переносимость?

*** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Displacer 23.06.2005 23:15:26  

Re: Статья "Java to EXE" на Javalobby

> вообще-то с++ - стандартизованный язык и программа, написанная на с++ - работает на любой платформе, имеющей с++ компилятор, соответствующий этому стандарту :)

Ну вот программа на С++. Компилятор у меня на линухе есть, стандарту соответствует. А программа не работает :(

#include <windows.h>
class Application {
public:
Application() {
MessageBox(NULL,"Hello, world!","Application Message", MB_OK |
MB_ICONINFORMATION);
};
};

Application theApp;

int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
return 0;
}

Я уж не говорю что её перекомпилировать приходится, в отличие от явы.

> лично я проблемы не вижу :) Кстати, можно ссылочку на сертификацию скажем ISO этого "промышленного стандарта"?

Я думаю, ISO быстро устанет если через них пропихивать каждый JSR :)

* ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от kos 24.06.2005 1:59:16  
MiracleMan

Re: Статья "Java to EXE" на Javalobby

2 kos (*) (24.06.2005 1:59:16)

Опаньки, а при чём тут win api? это ни разу не переносимый код.. ;-)))

***** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 24.06.2005 2:18:05  

Re: Статья "Java to EXE" на Javalobby

>The Symbolics Museum is designed for high-speed access. If you're using a slow connection, you probably won't be happy with the load times and general performance. We hope you'll come back and visit when you have access to a high-speed connection ;-)

В мою подлую душонку закралось чорное подозрение о причинах, по которым эта ось не получила широкого распространения.

*** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от MiracleMan 24.06.2005 2:20:45  

Re: Статья "Java to EXE" на Javalobby

По моему это и имелось в виду. (т.е. переносимый код, зависящий от непереносимых либ --- это не переносимый код)

*** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от ugoday 24.06.2005 2:34:19  
MiracleMan

Re: Статья "Java to EXE" на Javalobby

>По моему это и имелось в виду. (т.е. переносимый код, зависящий от непереносимых либ --- это не переносимый код)

Да я понял.. ;-) Просто мысль сама по себе достаточно очевидна, и приведение кода, на мой взгляд, избыточно...

***** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от MiracleMan 24.06.2005 2:20:45  

Re: Статья "Java to EXE" на Javalobby

> Опаньки, а при чём тут win api? это ни разу не переносимый код.. ;-)))

это всего лишь контрпример :)

было заявлено про переносимость любой программы на плюсах, я намекнул что в расчёт ещё надо брать библиотеки и много чего ещё. Я не отрицаю что на плюсах можно писать переносимый код, но я утверждаю что это делать гораздо сложнее чем на яве.

кстати, я не в курсе, есть ли под плюсы аналог свинга, в том плане что гуй будет на любой поддерживаемой платформе выглядеть 1-в-1 одинаково при одном и том же LnF? Про GTK, QT и тп я знаю, но как там борятся с расхождениями в системных виджетах, шрифтах и вызванными этим разъезжаниями?

* ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от ugoday 24.06.2005 2:28:46  

Re: Статья "Java to EXE" на Javalobby

Да ровно по той же, что и NeXT - дорогие по тем временам железки были.

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 23.06.2005 23:50:55  
WFrag

Re: Статья "Java to EXE" на Javalobby

В Java тоже можно абстракции высокого порядка сделать. Правда, при этом сразу начинает срабатывать 10 правило Гринспуна :)

**** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 23.06.2005 23:50:55  
mutronix

Re: Статья "Java to EXE" на Javalobby

> Ущербен тот язык, который не даёт возможности делать сложные вещи простыми. C++ позволяет создавать абстракции довольно высокого порядка, и в этом он превосходит Java, но отстаёт и от Python, и от Lisp, и даже от Tcl. Очень сильно отстаёт.

и

> Давайте сюда объективные преимущества C++ перед Common Lisp. Не надо петь про то, сколько софта на чём написано - это не серьёзный подход. Анализируем сами языки.

"C++ - это на самом деле не столько язык, сколько инструмент для создания ваших собственных языков. Его элегантность заключается отнюдь не в простоте (слова C++ и простота режут слух своим явным противонечием), а в его потенциальных возможностях. За каждой уродливой проблемой прячется какая-нибудь умная идиома, изящный языковой финт, благодаря которому проблема тает прямо на глазах. Проблема решается так же элегантно, как это слелал бы настоящий язык типа Smalltalk или Lisp, но при этом ваш процессор не дымится от напряжения, а на Уолл-Стрит не растут акции производителей чипов памяти. C++ - вообще не язык. Это мировоззрение или наркотик, меняющий способ мышления." Джефф Элджер

Слова о дымящимся процессоре теперь можно по праву отнести и к Java. Обладатели Sun Fire с аппаратной поддержкой Java конечно могут себе позволить использовать Java глобально, для остальных Java всего-лишь интструмент для создания небольших апплетов.

*** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от mutronix 24.06.2005 7:57:02  
WFrag

Re: Статья "Java to EXE" на Javalobby

>Слова о дымящимся процессоре теперь можно по праву отнести и к Java.

Да ну на. :)

**** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от Idiot 24.06.2005 0:29:56  

Re: Статья "Java to EXE" на Javalobby

вот когда появится хотя бы один DE на лиспе сравнимый по скорости и фичастости с KDE тогда так и быть, признаем этот несомненно хороший и достойный язык годным для практики, а пока... =)

тоже и к жава относится. но на ней хотя бы тормозной лукингглас написан

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от mutronix 24.06.2005 7:57:02  

Re: Статья "Java to EXE" на Javalobby

>C++ - это на самом деле не столько язык, сколько инструмент для создания ваших собственных языков.

И какие такие в цпп есть средства для метопрограммирования? Сколько занимает интерпретатор prolog на цпп?

*** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от kos 24.06.2005 1:59:16  

Re: Статья "Java to EXE" на Javalobby

чудик, ты бы прогу на Qt привел =) и под маздай и под юникс и под макосикс работает. не берись участвовать в дискуссиях до которых ты не дорос.

anonymous ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 24.06.2005 9:26:24  

Re: Статья "Java to EXE" на Javalobby

DE нету. А вот ваш kwin с sawfish даже сравнивать неприлично.

*** ()
[#] Ответ на: Re: Статья "Java to EXE" на Javalobby от anonymous 24.06.2005 9:29:38  

Re: Статья "Java to EXE" на Javalobby

Немедленно извинись перед kos, за то что ты вынес поспешное суждение, не вникая в смысл сообщения и не читая дальнейшее обсуждение, где всё было разобрано!

*** ()