Java/OracleSDK

Материал из ALT Linux Wiki

(Различия между версиями)
Перейти к: навигация, поиск
(Лицензионные ограничения)
(NOSRC In a Nutshell)
Строка 24: Строка 24:
=== NOSRC In a Nutshell ===
=== NOSRC In a Nutshell ===
 +
 +
Все действия этой инструкции проводим под оператором $.
Скачайте с  
Скачайте с  
Строка 31: Строка 33:
либо с  
либо с  
  http://fly.osdn.org.ua/~mike/packages/java/java-1.6.0-oracle/ (для Oracle JDK 6)
  http://fly.osdn.org.ua/~mike/packages/java/java-1.6.0-oracle/ (для Oracle JDK 6)
-
соответствующий .nosrc.rpm пакет.
 
-
Например, http://fly.osdn.org.ua/~mike/packages/java/java-1.7.0-oracle/java-1.7.0-oracle-1.7.0.21-alt1.nosrc.rpm
 
-
Установите его командой вида  
+
соответствующий *.nosrc.rpm пакет.
-
  rpm -i java-1.7.0-oracle-1.7.0.21-alt1.nosrc.rpm
+
 
-
Скачайте в папку {{path|SOURCES/}} недостающий исходник для вашей архитектуры с  
+
Например: http://fly.osdn.org.ua/~mike/packages/java/java-1.7.0-oracle/java-1.7.0-oracle-1.7.0.21-alt1.nosrc.rpm
-
сайта Oracle
+
 
 +
Установите его командой вида:
 +
 +
  $ rpm -i java-1.7.0-oracle-1.7.0.21-alt1.nosrc.rpm
 +
 
 +
После выполнения команды у вас появится новая директория "{{path|/home/"user_name"/RPM/}}" , в ней будет еще 2 папки: {{path|SOURCES}} и {{path|SPECS}}
 +
 
 +
Скачайте в папку {{path|SOURCES/}} недостающий исходник JDK*.tar.gz для вашей архитектуры с сайта Oracle
 +
 
[http://www.oracle.com/technetwork/java/javase/downloads/index.html Java SE Downloads],
[http://www.oracle.com/technetwork/java/javase/downloads/index.html Java SE Downloads],
[http://www.oracle.com/technetwork/java/javase/downloads/index.html download.oracle.com],
[http://www.oracle.com/technetwork/java/javase/downloads/index.html download.oracle.com],
если ссылки устареют, поищите новые в google.
если ссылки устареют, поищите новые в google.
-
Например, для java-1.7.0-oracle-1.7.0.3 это будут файл
+
Например: для java-1.7.0-oracle-1.7.0.3 это будет файл:
(i586) http://download.oracle.com/otn-pub/java/jdk/7u3-b04/jdk-7u3-linux-i586.tar.gz
(i586) http://download.oracle.com/otn-pub/java/jdk/7u3-b04/jdk-7u3-linux-i586.tar.gz
Строка 48: Строка 56:
(x86_64) http://download.oracle.com/otn-pub/java/jdk/7u3-b04/jdk-7u3-linux-x64.tar.gz
(x86_64) http://download.oracle.com/otn-pub/java/jdk/7u3-b04/jdk-7u3-linux-x64.tar.gz
-
Для java-1.7.0-oracle-1.7.0.21 это будут файлы {{pkg|jdk-7u21-linux-i586.tar.gz}} и {{pkg|jdk-7u21-linux-x64.tar.gz}}.
+
Для java-1.7.0-oracle-1.7.0.21 это будут файлы {{pkg|jdk-7u21-linux-i586.tar.gz}} и {{pkg|jdk-7u21-linux-x64.tar.gz}} соответственно.
 +
 
 +
 
 +
Публикация nosrc.rpm может отставать от выпуска новых релизов java.
 +
 
 +
Если на сайте Oracle доступна более свежая версия,
 +
чем имеющиеся *.nosrc.rpm необходимо внести поправки в файле java-1.7.0-oracle.spec,
 +
и только после этого приступать к сборке  *.src.rpm
 +
 
 +
К примеру: У вас в файле java-1.7.0-oracle.nosrc.rpm в строке "define buildver" указана версия 17, а на оф.сайте уже доступна версия jdk-7u21-linux-**.tar.gz
 +
править нужно следующее:
 +
( "-" - это строка для изменения, "+" - та же строка но уже с внесенными изменениями)
-
Публикация nosrc.rpm может отставать от выпуска новых релизов java.
 
-
Если случилось так, что  на сайте Oracle доступна более свежая версия,
 
-
чем имеющиеся nosrc.rpm, тогда можно просто обновить версию пакета в файле java-1.7.0-oracle.spec,
 
-
затем собрать src.rpm по инструкции. Внизу дан пример правки spec файла.
 
<source lang="diff">
<source lang="diff">
--- a/java-1.7.0-oracle.spec
--- a/java-1.7.0-oracle.spec
Строка 77: Строка 92:
</source>
</source>
-
Установите в host-систему пакет rpm-build-java.
+
Далее: установить в host-систему пакет rpm-build-java.
-
Зайдите в папку {{path|SPECS/}}, поправьте при необходимости версию в spec-файле,
+
 
-
и выполните команду (для Oracle JDK 7):
+
И в папке {{path|SPECS/}} выполнить команду (для Oracle JDK 7):
-
rpmbuild -bs --nodeps java-1.7.0-oracle.spec
+
 
 +
  $ rpmbuild -bs --nodeps java-1.7.0-oracle.spec
 +
 
Полученный в результате  java-1.7.0-oracle-1.7.0.21-alt1.src.rpm [[Hasher/Краткое руководство|пересоберите в hasher]].
Полученный в результате  java-1.7.0-oracle-1.7.0.21-alt1.src.rpm [[Hasher/Краткое руководство|пересоберите в hasher]].
-
Примечание: ключ --nodeps команды rpmbuild -bs позволяет выполнить ее без установки
+
Примечание:  
 +
ключ " --nodeps " команды "rpmbuild -bs" позволяет выполнить ее без установки
лишних зависимостей в хост-систему. При этом, если в хост-системе не будет некоторых дополнительных
лишних зависимостей в хост-систему. При этом, если в хост-системе не будет некоторых дополнительных
пакетов с макросами, именно, указанных в BuildRequires(pre): {{pkg|rpm-macros-alternatives browser-plugins-npapi-devel}},
пакетов с макросами, именно, указанных в BuildRequires(pre): {{pkg|rpm-macros-alternatives browser-plugins-npapi-devel}},

Версия 20:00, 26 апреля 2015

Установка Oracle Java 6/7 SDK в ALTLinux

Содержание


Лицензионные ограничения

jdk-6u26-linux является последним фирменным JDK, распространяемым под лицензией DLJ (Operating System Distributor License for Java version 1.1). Эта лицензия явно разрешает распространять JDK в составе дистрибутива. Таким образом, java-1.6.0-sun-1.6.0.26 является последним JDK от Sun/Oracle, входящим в состав Sisyphus.

Последующие версии Oracle JDK теперь распространяются под лицензией Oracle Binary Code License, в которой есть явное разрешение распространять JDK вместе с java приложениями, например, в составе LiveCD, но нет явного разрешения распространять JDK в одиночку, как отдельный пакет. Поэтому их нет в сизифе.

Однако ничто не мешает установить данные пакеты самостоятельно. Для безболезненной установки Oracle JDK под ALTLinux доступны .nosrc.rpm пакеты. В эти .nosrc.rpm пакеты собственно Oracle JDK не входит, его нужно отдельно скачать, после чего их можно пересобрать по инструкции ниже и получить обычные rpm пакеты, готовые к установке.

NOSRC In a Nutshell

Все действия этой инструкции проводим под оператором $.

Скачайте с

http://fly.osdn.org.ua/~mike/packages/java/java-1.8.0-oracle/ (для Oracle JDK 8)

с

http://fly.osdn.org.ua/~mike/packages/java/java-1.7.0-oracle/ (для Oracle JDK 7)

либо с

http://fly.osdn.org.ua/~mike/packages/java/java-1.6.0-oracle/ (для Oracle JDK 6)

соответствующий *.nosrc.rpm пакет.

Например: http://fly.osdn.org.ua/~mike/packages/java/java-1.7.0-oracle/java-1.7.0-oracle-1.7.0.21-alt1.nosrc.rpm

Установите его командой вида:

$ rpm -i java-1.7.0-oracle-1.7.0.21-alt1.nosrc.rpm

После выполнения команды у вас появится новая директория "/home/"user_name"/RPM/" , в ней будет еще 2 папки: SOURCES и SPECS

Скачайте в папку SOURCES/ недостающий исходник JDK*.tar.gz для вашей архитектуры с сайта Oracle

Java SE Downloads, download.oracle.com, если ссылки устареют, поищите новые в google.

Например: для java-1.7.0-oracle-1.7.0.3 это будет файл:

(i586) http://download.oracle.com/otn-pub/java/jdk/7u3-b04/jdk-7u3-linux-i586.tar.gz

(x86_64) http://download.oracle.com/otn-pub/java/jdk/7u3-b04/jdk-7u3-linux-x64.tar.gz

Для java-1.7.0-oracle-1.7.0.21 это будут файлы jdk-7u21-linux-i586.tar.gz и jdk-7u21-linux-x64.tar.gz соответственно.


Публикация nosrc.rpm может отставать от выпуска новых релизов java.

Если на сайте Oracle доступна более свежая версия, чем имеющиеся *.nosrc.rpm необходимо внести поправки в файле java-1.7.0-oracle.spec, и только после этого приступать к сборке *.src.rpm

К примеру: У вас в файле java-1.7.0-oracle.nosrc.rpm в строке "define buildver" указана версия 17, а на оф.сайте уже доступна версия jdk-7u21-linux-**.tar.gz править нужно следующее: ( "-" - это строка для изменения, "+" - та же строка но уже с внесенными изменениями)

--- a/java-1.7.0-oracle.spec
+++ b/java-1.7.0-oracle.spec
@@ -38,7 +38,7 @@
 %define origin          oracle
 %define priority        16040
 %define javaver         %major.%minor
-%define buildver        17
+%define buildver        21
 
 %define jppname         java-%{javaver}-%{origin}
 %define javaws_ver      %{javaver}
@@ -989,6 +989,9 @@ done
 
 
 %changelog
+* Mon Apr 22 2013 Igor Vlasenko <viy@altlinux.ru> 0:1.7.0.21-alt1
+- nosrc spec file for java sdk 7u21
+
 * Fri Mar 08 2013 Igor Vlasenko <viy@altlinux.ru> 0:1.7.0.17-alt1
 - nosrc spec file for java sdk 7u17

Далее: установить в host-систему пакет rpm-build-java.

И в папке SPECS/ выполнить команду (для Oracle JDK 7):

 $ rpmbuild -bs --nodeps java-1.7.0-oracle.spec

Полученный в результате java-1.7.0-oracle-1.7.0.21-alt1.src.rpm пересоберите в hasher.

Примечание: ключ " --nodeps " команды "rpmbuild -bs" позволяет выполнить ее без установки лишних зависимостей в хост-систему. При этом, если в хост-системе не будет некоторых дополнительных пакетов с макросами, именно, указанных в BuildRequires(pre): rpm-macros-alternatives browser-plugins-npapi-devel, то rpmbuild будет выдавать предупреждения, связанные с отсутствием соответствующих макросов. На это можно не обращать внимания, если сборка src.rpm пакета состоялась.

Примечания

Если вы не осилили сборку в hasher, то надо делать так
cd  /home/user/RPM/SPEC
rpmbuild -bs --nodeps java-1.8.0-oracle.spec
 
cd  /home/user/RPM/SRPMS
apt-get build-dep java-1.8.0-oracle-1.8.0.31-alt1.src.rpm
 
cd  /home/user/RPM/SPEC
rpmbuild -bs --nodeps java-1.8.0-oracle.spec

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

В последней версии надо запретить сборку moz_plugin_classiс для 32-битной архитектуры (как уже сделано для 64-бит)


@@ -84,7 +84,7 
 %else
 %def_enable javaws
 %def_enable moz_plugin
-%def_enable moz_plugin_classic
+%def_disable moz_plugin_classic
 %def_enable desktop
 %endif
 %def_with gcc32_abi

Ссылки

Сборка_пакета_с_нуля

Hasher


Переключение на Oracle JDK

TODO: использование alternatives

 
Личные инструменты