Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Приложение на JAVA ??? как сделать его независимым 
:(
    Опции темы
maxius
  Дата 30.4.2004, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 30.4.2004

Репутация: нет
Всего: нет



Написал приложение на Java (пара тройка классов), можно ли сделать так, чтобы оно было полностью независимым т.е. чтобы оно запускалось на любой машине, не требуя установки всего компилятора, за исключением VJM. (Например как в С есть исполняющий *.exe файл). В JAVA только *.bat ???
(надеюсь проблему изложил понятно)
PM MAIL   Вверх
simanyay
Дата 30.4.2004, 19:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Антон Ковалёв
****


Профиль
Группа: Участник
Сообщений: 2053
Регистрация: 22.8.2002

Репутация: 3
Всего: 36



Судя по изучению структуры NetBeans IDE, jEdit etc. я обнаружил, что они все делают свой скрипт (а иногда и EXEшники) для конкретной системы. Т.е. в NetBeans IDE в папке bin находятся следующие файлы:
runide.bat - Windows
runidew.exe - Windows executable
runide.sh - Linux
etc.
Надеюсь, что помог
Добавлено @ 20:01
Только что заметил, что они написали установщик (*.jar) и он настраивает всё под конкретную систему.
И только что меня осенило, что если юзер поставил JVM, то ему достаточно java и java -jar


--------------------
«It's better to be a pirate than to join the Navy» — Steve Jobs.
PM MAIL WWW   Вверх
maxius
Дата 30.4.2004, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 30.4.2004

Репутация: нет
Всего: нет



Спасибо, гляну...
PM MAIL   Вверх
maxius
Дата 30.4.2004, 20:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 30.4.2004

Репутация: нет
Всего: нет



Честно говоря понятия не имею как выполнять данную операцию.

Если правильно понял создать EXE-шник средствами Java можно ???

Это сообщение отредактировал(а) maxius - 30.4.2004, 20:21
PM MAIL   Вверх
DarkDS
Дата 30.4.2004, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 748
Регистрация: 6.5.2003
Где: Таллинн, Эстония

Репутация: 11
Всего: 16



Цитата(maxius @ 30.4.2004, 20:20)
Честно говоря понятия не имею как выполнять данную операцию.

Если правильно понял создать EXE-шник средствами Java можно ???

Нет. Средствами ява создать ехе ты не можешь. Есть утилиты, которые трансируют ява байт код в машинный код (где то был тред про них)
Средствами ява можно создать jar файл (как его создавать тоже тред был). А вот этот файл как раз запускается средствами JVM
То есть для запуска jar файла тебе нужно:
1, Уставновленная JVM (к примеру JRE от сана)
2. сам jar файл.
Запуск последнего можно произвести так:
1. java -jar yourfile.jar (это команда действует только когда в майнфест файле прописан майн класс)
2. java -cp yourfile.jar package.MainClass (если майн класс лежит в корне, то пакедж не пишется. Майн класс - класс с майн методом. пишется без расширения)
Добавлено @ 22:00
ЗЫ. бат файл в чаще всего содержит одну из 2-х последних команд.
PM MAIL   Вверх
LSD
Дата 30.4.2004, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Есть утилиты которые позволяют создавать исполняемые файлы из jar-ов. Например JBuilder может такое делать, создается исполняемый файл, который по сути представляет собой jar архив с запускающим его модулем и все, есть и сторонние утилиты для этих целей. На крайний случай можно воспользоваться саморапаковывающимися архивами. Но все эти методы требуют установленной Java машины.
А по поводу полного перевода байт-кода, в native код, это на мой взгляд возможно, только в ОЧЕНЬ ограниченном числе случаев (хотя я видел упоминание о компиляторе из Java в Си).


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
sergejzr
Дата 1.5.2004, 02:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 6
Всего: 360



есть такая вещь gcj на всяких linux'ax пашет прекрасно. К сожалению на windows требует cygwin, потому что его версии, которые мне попадались были скомпилированы именно на cygwin'e. Чисто теоретически gcj можно скомпилировать например с VC++. Тогда должен работать без Cygwin'a.



--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
simanyay
Дата 1.5.2004, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Антон Ковалёв
****


Профиль
Группа: Участник
Сообщений: 2053
Регистрация: 22.8.2002

Репутация: 3
Всего: 36



Цитата
есть такая вещь gcj на всяких linux'ax пашет прекрасно. К сожалению на windows требует cygwin, потому что его версии, которые мне попадались были скомпилированы именно на cygwin'e. Чисто теоретически gcj можно скомпилировать например с VC++. Тогда должен работать без Cygwin'a.


А зачем это под Линуксом? Там можно настроить систему так, что Java проги будут запускаться как обычные. Т.е. не надо писать java myjavaprogram, а можно просто myjavaprogram. И чем это отличается от EXE? Под Windows, когда ставиться JRE, то все .jar файлы автоматически запускаются через javaw. Так что я просто два раза кликаю (ну или, чаще всего, нажимаю Enter) и JAR запускается.


--------------------
«It's better to be a pirate than to join the Navy» — Steve Jobs.
PM MAIL WWW   Вверх
Гость_maxius
Дата 4.5.2004, 16:27 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Огромное спасибо всем, я получил ответ на свой вопрос.
  Вверх
LSD
Дата 6.5.2004, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Цитата(simanyay @ 1.5.2004, 19:12)
А зачем это под Линуксом? Там можно настроить систему так, что Java проги будут запускаться как обычные. Т.е. не надо писать java myjavaprogram, а можно просто myjavaprogram. И чем это отличается от EXE? Под Windows, когда ставиться JRE, то все .jar файлы автоматически запускаются через javaw. Так что я просто два раза кликаю (ну или, чаще всего, нажимаю Enter) и JAR запускается.

Такого поведения можно и в виндах добиться: достаточно прописать ассоциации class, jar и PATHEXT добавить class и jar.

2 sergej.z
А можно ссылочку?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
sergejzr
Дата 6.5.2004, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 6
Всего: 360



Что бы тебе не заниматься поиском зря, сообщу пару важных вещей, которые возможно сразу покажут подходит или не подходит тебе решение GCJ.
Пару пунктов за и против.

пункты против существуют только для виндов:
  • Как я уже говорил, мне не встречалась версия гцй, которая работала бы без CYGWIN'а. Проблема в том, что созданные таким образом проложения тоже не работают без CYGWIN'а.
  • Если ты хочешь использовать графику в виндах - встретятся проблемы. Дело в том, что GCJ использует графические библиотеки, которые так же должны быть установлены.
за:
  • Обьектно-ориентированный язык Ява со всеми его преимуществами. В том числе без проблем с деструкцией.
  • Ехе работает значительно быстрее JVM'а
  • GCJ компилирует не только исходный, но и байтный код(*.класс)
  • Так как GCJ - составная часть GCC, её разработка идёт полным ходом. Надеюсь в ближайшее время увидеть решение вышеописанных проблем.
Как я уже говорил на Юни/Линуксах никаких проблем. Если там установлен GCC, то GCJ и все прибамбасы скорее всего тоже есть.

Ну, а теперь, если тебя не смущают вышеизложенные пункты, линьки по сабжу:

Проект GCJ
Описание для виндов
CYGWIN




--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
temporary
Дата 8.5.2004, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 126
Регистрация: 16.6.2003
Где: Germany

Репутация: нет
Всего: нет



PM MAIL   Вверх
Likurg
Дата 9.5.2004, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 25.4.2004

Репутация: нет
Всего: нет



Я создал ексешник с помощью JET, на моем компе все ок,а на чужом появляется командная строка и исчезает,ничего не запускается, что делать не подскажите?
PM MAIL   Вверх
LSD
Дата 9.5.2004, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Попробуй начать с минимума: скомпилируй HeloWorld и проверь как он работает. Если заработает то проблема в твоей программе (вернее поиск надо вести в ней), а если нет значит надо смотреть на еастройки JET-а: целевая платформа, используемые библиотеки и т.д.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Stvan
Дата 11.5.2004, 06:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 28.10.2003

Репутация: нет
Всего: нет



Тоже попробовал jet, все зашибись, но при запуске программы появляется досовское окошко. Может кто знает как его убрать ?
PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1139 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.