Debian jessieでJOSMを利用する

Debian jessieでJOSMをインストールした時のメモです。

メイン環境のレッツノートCF-N10では、Debian jessieを利用しています。ある時期からJOSMが"openjdk-8-jre"を必要とするようになったのですが、jessieのパッケージでは "openjdk-7-jre"なので、JOSMを削除していました。

すでにoldstable(旧安定版)となっているのでDebianのアップグレードをしてもよいのですが、今回はjessie-backportsのopenjdk-8-jreを利用しました。

参考にしたページ
JOSMダウンロードページ
moe's techblog: "Installing OpenJDK 8 on Debian Jessie"

以下は手順です。
$ sudo vi /etc/apt/sources.list で以下のjessie-backportsとJOSMのリポジトリを追記します(以前に追記していました)
deb http://ftp.jp.debian.org/debian jessie-backports main contrib non-free
deb http://josm.openstreetmap.de/apt alldist universe

JOSMのリポジトリの公開鍵を登録します(これも以前やっていました)
wget -q https://josm.openstreetmap.de/josm-apt.key -O- | sudo apt-key add -

openjdk-8-jreをインストールします。
$ sudo aptitude update
$ sudo aptitude install -t jessie-backports openjdk-8-jre
以下の新規パッケージがインストールされます:
openjdk-8-jre openjdk-8-jre-headless{a}
以下のパッケージが更新されます:
ca-certificates-java
更新: 1 個、新規インストール: 2 個、削除: 0 個、保留: 308 個。
27.1 M バイトのアーカイブを取得する必要があります。展開後に 100 M バイトのディスク領域が新たに消費されます。

java-1.8.0-openjdk-amd64 パッケージに切り替えます。
$ sudo update-java-alternatives --list
java-1.7.0-openjdk-amd64 1071 /usr/lib/jvm/java-1.7.0-openjdk-amd64
java-1.8.0-openjdk-amd64 1069 /usr/lib/jvm/java-1.8.0-openjdk-amd64
$ sudo update-java-alternatives --set java-1.8.0-openjdk-amd64
update-alternatives: エラー: mozilla-javaplugin.so の alternatives がありません
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-8-openjdk-amd64/bin/appletviewer
update-java-alternatives: jdk alternative does not exist: /usr/lib/jvm/java-8-openjdk-amd64/bin/jconsole
update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so

JOSMをインストールします。
$ sudo aptitude install josm
以下の新規パッケージがインストールされます:
josm libopenjfx-java{a} libopenjfx-jni{a} openjfx{a} proj-data{a}
更新: 0 個、新規インストール: 5 個、削除: 0 個、保留: 1 個。
31.0 M バイトのアーカイブを取得する必要があります。展開後に 54.7 M バイトのディスク領域が新たに消費されます。
先に進みますか? [Y/n/?] y
取得: 1 http://josm.openstreetmap.de/apt/ alldist/universe josm all 1.5.svn12712 [10.8 MB]
取得: 2 http://ftp.jp.debian.org/debian/ jessie-backports/main libopenjfx-jni amd64 8u102-b14-1~bpo8+1 [8,174 kB]
...

$ josm で起動できました。

以下途中であれこれしたメモです。
"openjdk-7-jre" を削除しようと思いましたが、依存パッケージを削除されるのでやめました。
$ sudo aptitude remove openjdk-7-jre
以下のパッケージが削除されます:
openjdk-7-jre
更新: 0 個、新規インストール: 0 個、削除: 1 個、保留: 1 個。
0 バイトのアーカイブを取得する必要があります。展開後に 666 k バイトのディスク領域が解放されます。
以下のパッケージには満たされていない依存関係があります:
default-jre : 依存: openjdk-7-jre (>= 7~u3-2.1.1) [インストールされません]
openjdk-7-jdk : 依存: openjdk-7-jre (= 7u151-2.6.11-1~deb8u1) [インストールされません]
以下のアクションでこれらの依存関係の問題は解決されます:
以下のパッケージを削除する:
1) default-jdk
2) default-jre
3) freemind
4) javahelp2
5) openjdk-7-jdk
6) simplyhtml

また、-tオプションで、 "jessie-backports" を明示的に指定しない場合は、以下のように怒られました。
$ sudo aptitude install openjdk-8-jre
以下の新規パッケージがインストールされます:
openjdk-8-jre openjdk-8-jre-headless{ab}
更新: 0 個、新規インストール: 2 個、削除: 0 個、保留: 1 個。
27.1 M バイトのアーカイブを取得する必要があります。展開後に 100 M バイトのディスク領域が新たに消費されます。
以下のパッケージには満たされていない依存関係があります:
openjdk-8-jre-headless : 破壊: ca-certificates-java (< 20160321~) [20140324 が既にインストール済みです]
破壊: ca-certificates-java:i386 (< 20160321~)[仮想パッケージです]
以下のアクションでこれらの依存関係の問題は解決されます:

以下のパッケージを現在のバージョンに一時固定する:
1) openjdk-8-jre [インストールされていません]
2) openjdk-8-jre-headless [インストールされていません]

この記事へのコメント