Установка Java вручную в Windows?

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

Также в этом случае: Как мы можем настроить плагин Java для браузеров? И как мы можем настроить параметры, как видно из записи панели управления для Java?

Ответ 1

Да, вы можете создать JDK с расширением zip, разархивировать его на целевой машине и запустить java, javac и т.д. из этого каталога в ваш сердечный контент.

Самый простой способ создать такой zip файл - установить JDK на машине, а затем застегнуть содержимое каталога JDK. Мы делаем это в определенных обстоятельствах, когда нам нужно точно контролировать, какая конфигурация Java будет использоваться в наших развертываниях. В этом случае наши скрипты просто указывают JAVA_HOME (или эквивалент) на наш внутренний JDK вместо того, чтобы полагаться на sysadmin для установки именно того, что нам нужно до прибытия.

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

Ответ 2

В соответствии с этим я создал пакет script для сборки jdk архивы автоматически.

Существенными частями ссылки являются:

  • Создайте рабочий каталог JDK ( "C:\JDK" в этом случае)
  • Загрузите последнюю версию JDK из oracle (например, "jdk-7u7-windows-i586.exe" )
  • Загрузите и установите 7-zip (или загрузите 7-zip-портативную версию, если вы не являетесь администратором)
  • С 7-zip извлеките все файлы из "jdk- [6-7] u? -windows-i586.exe" в каталог "C:\JDK"
  • В командной оболочке (cmd.exe) выполните следующие действия:
    • сменить каталог в каталог C:\JDK.rsrc\JAVA_CAB10
    • выполнить команду: extrac32 111
  • Распакуйте C:\JDK.rsrc\JAVA_CAB10\tools.zip с 7-zip
  • В командной оболочке (cmd.exe) выполните следующие действия:
    • сменить каталог на C:\JDK.rsrc\JAVA_CAB10\tools\
    • выполнить команду: для /r % x в (*.pack) сделать. \bin\unpack200 -r "% x" "% ~ dx% ~ px% ~ nx.jar" ( это преобразует все файлы пакета в банку)
  • Скопируйте весь каталог и весь поддиремент c:\JDK.rsrc\JAVA_CAB10\tools ", где вы хотите, чтобы ваш JDK был и настраивал вручную JAVA_HOME и PATH, чтобы указать на ваш JDK-каталог и его поддиректор BIN.

Ответ 3

Вы можете использовать SysInternals RegMon и FileMon (теперь принадлежащие и dist от MS), чтобы точно увидеть, что было изменено установщиком Java. Я считаю, что будет создано несколько записей reg, которые вы хотите создать. Например, такие продукты, как установщик WISE, также используют такой подход под капотом для переупаковки установок продукта (например, MSI).

Пожалуйста, будьте осторожны, так как есть некоторые динамические решения, сделанные установщиком, которые могут повлиять на то, что установлено (например, на сервере XP vs .s. W2K3). Я был укушен этим однажды в отношении установленных кодовых страниц. Я не помню точных данных, но эффект заключался в отсутствии файла кодовой страницы в моем встроенном JRE + JDK (только для части, распространяемой только законом). Это вызвало очень странную и, казалось бы, бессмысленную ошибку времени выполнения в моем коде. Само собой разумеется, что то же самое относится к Server v.s. клиентских JVM DLL.

Ответ 4

Действительно, нет, по крайней мере, если вы хотите использовать его из Windows, а не из, скажем, cygwin. Windows слишком сильно зависит от реестра; вы можете смоделировать необходимые обновления реестра, но программное обеспечение, которое перемещает файлы в нужное место и обновляет реестр, называется "установщиком"; вы просто изобретаете установщика.

Ответ 5

Я считаю, что это, по крайней мере, было возможно в ограниченной степени с более ранними версиями Java - я не знаю, все ли это.

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

Какой ваш фактический прецедент? Вам действительно нужен плагин для браузера? Какой аспект конфигурации вас интересует? Большая часть конфигурации панели управления связана с обновлениями и интеграцией браузеров. Многие другие аспекты можно контролировать с помощью параметров командной строки для установки определенных свойств системы.

Ответ 6

Если вы просто хотите предоставить JVM с вашим приложением, это нормально, но больше, чем я бы не рекомендовал.

Ответ 7

Если вы просто хотите иметь файлы JDK (JRE), вы можете запустить установщик в sandboxie. После установки в песочницу просто скопируйте файлы из c:\sandbox и вы закончите.

Я использую это для компиляции и запуска устаревших java-приложений, которые не могут быть легко перенесены в более новую версию Java. Я могу указать Eclispe на эти JDK и сказать, что он совместим с Java 1.3.

Ответ 8

Просто загрузите версию сервера Java с сервера Oracle на страницу загрузки Oracle. Настройте параметры JAVA_HOME и PATH самостоятельно.