Azureus отлично работает на последней Java, но его проверка зависимостей запрашивает устаревшую версию JRE. Как сказать Ubuntu прекратить преследовать меня за «неудовлетворенную зависимость»?

Поэтому я принудительно устанавливаю Vuze (и его зависимость Azureus) через apt-get, и он работает нормально по умолчанию-jre.

Несмотря на то, что default-jre работает как зависимость для Azureus (по крайней мере, для моего сценария использования), проверка зависимостей внутри пакета Azureus требует более старой и устаревшей версии JRE, и меня засыпает неудовлетворенное сообщение о зависимости .

Каждый раз, когда я выполняю какую-либо операцию apt-get, меня приветствуют:

You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 azureus : Depends: openjdk-7-jre but it is not installable or
                    openjdk-6-jre but it is not installable or
                    sun-java5-jre but it is not installable or
                    sun-java6-jre but it is not installable
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Редактировать: я не хочу «разрешать» проблему зависимости, потому что нет проблемы, которую нужно решить , Предупреждение является ошибочным, поскольку проверка зависимостей внутри Azureus устарела.

Есть ли способ сказать Ubuntu игнорировать зависимости для этого конкретного пакета?

2
задан 29 April 2016 в 16:27

3 ответа

Вы не можете сказать Ubuntu игнорировать проблему, но можно фальсифицировать установка пакета путем создания фиктивной версии . Это не это болезненно.

sudo apt install equivs
nano openjdk-7-jre

Вставка в чем-то как следующее:

Section: misc
Priority: optional

Package: openjdk-7-jre
Description: Dummy package

И затем выполненный:

equivs-build openjdk-7-jre
sudo dpkg -i openjdk-7-jre_1.0_all.deb
0
ответ дан 30 April 2016 в 02:27
  • 1
    @EliahKagan: Incidentaly/usr/bin/cd имеет использование: каталог/usr/bin/cd управляет выполнениями, которые управляют в том каталоге. Если изменение каталога приводит команду к сбою doesn' t запускаются. – Joshua 2 October 2017 в 02:31

"Is there any way to tell Ubuntu to ignore the dependencies for this specific package?"

, Почему

, Если необходимо говорить с французским человеком, Вы нуждаетесь в переводчике - или учите французский язык - который переведет французские слова в английский язык для Вас. Вы depend на том переводчике - или некоторый другой носитель - для разговора properly тому человеку.

Vuze имеет свои собственные зависимости, который он depends на работать properly.

кроме того, Linux имеет много лучше, более быстрые, более безопасные клиенты потока доступный по умолчанию.

Ссылки

0
ответ дан 30 April 2016 в 02:27

Я нашел другой "возможно более соответствующий" ответ. Это даст Вам способность вырезать неправильную зависимость в пакете преступника. В отличие от фиктивного метода пакета, это не будет влиять на всю систему.

Вам нужно atool (sudo apt install dpkg-dev devscripts atool), и gdebi (dpkg сделает также, но я предпочитаю gdebi)

$pkg = название пакета, который вызывает проблему.

apt-get download $pkg
mkdir pkg
atool -X pkg $pkg
vi pkg/DEBIAN/control
# [This is where you edit out the wrong dependencies]
rm -vf $pkg && dpkg-deb -b pkg $pkg
sudo gdebi $pkg

В моем случае, строка, которую я должен был отредактировать, была:

Depends: openjdk-7-jre | openjdk-6-jre | sun-java5-jre | sun-java6-jre, libcommons-cli-java, liblog4j1.2-java, libswt-gtk-3-java, java-wrappers

Благодарность переходит к sergall для это решение . Метод был лично проверен мной.

0
ответ дан 30 April 2016 в 02:27
  • 1
    @Joshua лучшее использование cd просто как тест способности получить доступ к данному каталогу: если /usr/bin/cd some/dir успешно выполняется, в одном выстреле Вы протестировали: a) то, что some/dir существует, b) это it' s каталог или ссылка на одну и c) необходимые полномочия для Вас для доступа к тому каталогу существуют; все, не изменяя Ваше собственное состояние. – muru 2 October 2017 в 11:57

Другие вопросы по тегам:

Похожие вопросы: