Debian でバージョンの不一致を気にしないようにするには?

Debian でバージョンの不一致を気にしないようにするには?

一度は、dpkg他のDebianバージョン(Sid)のいくつかのパッケージ(openjdk)を現在のインストール(Stretch)に強制インストールしました。うまくいくようです(「hello world」をコンパイルできます)。しかし、それ以降に何かをインストールしようとすると、libc6バージョンの不一致に関する苦情が表示されます。

この問題をどのように無視できますか?

または同じ基本インストールで複数のopenjdkバージョンを使用する他の方法はありますか?私はSidを私のベースとして使用したくありません。

答え1

この問題を無視することはできません...

ただし、この問題を解決する方法はいくつかあります。

  1. Debian 10にアップグレードできます。現在、このバージョンのOpenJDKバージョンは安定版に近く、まもなく同じバージョンが出る予定です。

  2. StretchからバックポートされたOpenJDK(11)をインストールできます。これは不安定なバージョンと同じですが、Stretchパッケージ用に構築されました。

後者はおそらくもっと簡単でしょう。

echo deb http://deb.debian.org/debian stretch-backports main | sudo tee /etc/apt/sources.list.d/stretch-backports.list
sudo apt update
sudo apt install -t stretch-backports openjdk-11-jdk

また、処理する必要があるかもしれません一部libcには違いがありますが、具体的な内容はOpenJDKにアップグレードした項目によって異なります。

このように、OpenJDK 8と11を並べてインストールしてJAVA_HOME適切に設定することで、適切なバージョンを使用できます。システム全体のデフォルトのJavaバージョンはを実行して設定できますupdate-java-alternatives

以前のバージョンのJavaをインストールするには、Debianスナップショットからパッケージセットをインストールしてみてください。オープンJDK 6そしてオープンJDK 7。バージョン9と10は安定リリースとしてリリースされていないので、とにかく必要ないので試してみません。

何をしても、最新バージョンの Debian からパッケージをインストールしようとするのではなく、dpkgその--forceオプションを使用しないでください。

関連情報