У меня есть Oracle Java 7 на моем Debian.
Я хочу установить сервер Tomcat, используя aptitude, но он продолжает пытаться установить icedtea и ненужные пакеты, связанные с Java. Может ли aptitude знать, что у меня уже есть Java?
NB: я использовал make-jpkg
команду для установки Java из архива.
equivs
пакет, это может помочь..deb
s. Звучит как ошибка где-то ... какие пакеты вы видите, которые требуют openjdk?tomcat7
Ответы:
Изменить: более простой метод здесь вверху, но материал о
control
файлах из полного исходного ответа по-прежнему актуален, поэтому я держу его ниже горизонтального правила.Если вы
make-jpkg
уже создали файл Oracle Java .deb, вы можете извлечь его, изменить его,control
как показано ниже, чтобы добавитьprovides
директивы, перепаковать его и установить измененный deb. ,Оригинальный ответ:
Используя
equivs
, можно создать фиктивный пакет, который в основном действует, чтобы заставить dpkg думать, что что-то установлено.Хороший пример того, как начать использовать «эквиваленты», написан здесь .
Чтобы сделать это для Oracle Java и заставить его выступать в качестве замены openjdk (который, как мне кажется, является зависимостью от
icedtea-netx
sid, который я использую), я думаю, вам нужно установитьprovides:
запись в конфигурации dpkg. Таким образом, ваш контрольный файл будет выглядеть примерно так:Обратите внимание на добавление последней строки. Если бы я мог сделать цветной текст в уценке, я бы выделил его красным цветом.
Тогда, согласно сообщению в блоге, связанному выше:
Подробнее о
provides
директиве см .: https://www.debian.org/doc/debian-policy/ch-relationships.html#virtual-packages-provides.Обратите внимание, что я не уверен, какую версию Debian вы используете, поэтому я не знаю, зависит ли OpenJDK 7, 8 или что-то еще от icedtea. Вы, вероятно, должны установить IcedTea как минимум, так как я не думаю, что Oracle JDK имеет веб-плагин. Но если вы хотите, и вы были уверены, что это ничего не сломит, вы можете добавить icedtea как «предоставленный». Имя пакета (я думаю - зависит от вашего выпуска Debian)
icedtea-7-plugin
.источник