гугл меня не понимает. Как создать инсталлер JDK?

yolki

Задача: собрать свой JDK с закладками с гимназистками и преферансом.
С этим я успешно справился.
как создать инсталляшку я не могу понять. :crazy:
хочу набрать что-то типа make installer и чтобы оно испекло jdk-6u666-windows-i586.exe
целевая платформа: Windows XP 32bit

kokoc88

как создать инсталляшку я не могу понять.
хочу набрать что-то типа make installer и чтобы оно испекло jdk-6u666-windows-i586.exe
целевая платформа: Windows XP 32bit
Может быть, я не понимаю твоего вопроса. Тебе просто нужно написать инсталлятор под винду, например, с использованием WIX. Учти, что в оригинальном инсталляторе jar сжимаются pack200.exe, что весьма сильно урезает размер дистрибутива.

yolki

Ну вот смотрим сюда например:
http://download.java.net/jdk6/6u23/promoted/b05/docs/build/R...
make sanity && make ARCH_DATA_MODEL=32
собирает.
При этом он испекает два каталога (по мимо всего прочего):
control/build/windows-i586/j2re-image
control/build/windows-i586/j2sdk-image
они идентичны тому, что распаковывается в Program files\Java\jre и jdk соответственно.
теперь их нужно упаковать.
в инструкциях есть указания, что нужно установить Windows SDK и указать пути к MSI*. Сделано.
Я просмотрел make/install-rules.gmk, там есть цель installer.
однако, этот файл не подцепляется из головного make.
И что-то я не вижу вызовов MSI* из мейкфайлов, которые бы испекали дистрибутив.
Гугление по словам типа "jdk make installer" ведёт на инструкции по установке JDK, а не по сборке его инсталлера.
Инсталлер же не только файлы распаковывает. он переменные окружения настраивает и в реестре что-то подделывает. вот это и не могу пока найти...

kokoc88

Ну вот смотрим сюда например:
http://download.java.net/jdk6/6u23/promoted/b05/docs/build/R...
make sanity && make ARCH_DATA_MODEL=32
Ясно, ты хочешь собрать его из исходников. Я таким не занимался, JDK распространял в виде локальной папки вместе с программой.

yolki

из патченных исходников ;)

PooH

можешь испечь его в Inno Setup, там можно много чего напрогать в скриптах (переменные окружения, записи в реестр, постпроцессинг)
но я так понимаю, что проблема в том, что нужно узнать сначала, что конкретно прописывает нормальный инсталлер?

yolki

да, проблема в этом.
реверсить готовый инсталлер не хочется, хотя и возможно - procmon например

PooH

procmon не всю информацию показывает (ну я может криворук отследить что именно читает и пишет процесс не всегда получается

karkar

Яндекс.бар вставляешь?

serega1604

из патченных исходников ;)
ты же понимаешь, что ты не имеешь права называть результат твоей деятельности java?

yolki

К счастью, это не мои проблемы :grin:

viktor954

Зачем? Можно же распакованную жабу держать рядом с основной прилой и при запуске jar-ов использовать
%pathtomyjava%\bin\javaw.exe -Djava.library.path=%pathtomyjava%/lib
и т.д.

yolki

ты не понимаешь.
требуется у пользователя создать видимость, что он установил джаву

kokoc88

требуется у пользователя создать видимость, что он установил джаву
А на самом деле ему каждые пять минут будет открываться реклама порносайта?... :mad:

yolki

гимназистки и преферанс

yolki

это всё хохма, разумеется, если у кого не очень тонкое чувство юмора.
но задачу проще сформулировать именно так.

kokoc88

гимназистки и преферанс
А на самом деле ему будет каждые пять минут открываться реклама тематического порносайта?.. :mad:

viktor954

Ну создай ветки
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.jar
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.jnlp
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\jarfile
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\JNLPFile
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft
, но самое главное — что-нибудь типа:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F86417009FF}

katrin2201

Тогда может готовый инсталлятор проще пропатчить? В случае винды там все по ресурсам распихано.
Или обернуть джавовский инсталлятор в свой, который после установки оригинальной джавы пропатчит где нужно?
А вообще, это все дурно пахнет...

serega1604

требуется у пользователя создать видимость, что он установил джаву
налепи ему наклейку на монитор "У Вас установлена JDK"

apl13

И преферанс же. Реклама порносайта и онлайн-казино. :umnik:
Оставить комментарий
Имя или ник:
Комментарий: