JOSM (Java OpenStreetMap Editor) でメモリが確保できないときの対処法

【概要】JOSM (Java OpenStreetMap Editor) で作業中にメモリ不足エラーが発生した場合の対処法を解説する。コマンドプロンプトからJavaのヒープメモリ割り当て量を増やすオプションを指定して起動することで、エラーを回避できる。

【目次】

  1. エラーの原因と対処法
  2. コマンドオプションの説明
  3. 対処手順

エラーの原因と対処法

JOSM (Java OpenStreetMap Editor) で作業中に、下図に示すようなエラーが発生する場合がある。このエラーは、JOSMが必要とするメモリを確保できなくなったときに表示される。

JOSMのメモリ割り当てエラーダイアログ

メモリ割り当てのエラーを回避するには、コマンドプロンプトからJavaの起動オプションを指定してJOSMを起動する。この方法により、広い範囲の地図データや多数の画像を扱う編集作業が可能になる。

コマンドオプションの説明

JOSMの起動時に使用するオプションを説明する。

-Xmx1024m: Javaのヒープメモリ(プログラムが使用する作業用メモリ領域)の最大値を1024MB(1GB)に設定する。より多くのメモリが必要な場合は、-Xmx2048mのように値を増やすことができる。ただし、PCに搭載されている物理メモリの半分程度を上限とすることを推奨する。過大な値を設定すると、システム全体の動作が不安定になる場合がある。

-Dsun.java2d.opengl=true: OpenGL(3Dグラフィックス描画のための標準規格)によるハードウェアアクセラレーション(GPUを利用した描画処理の高速化)を有効にする。メモリ不足の問題とは直接関係しないが、JOSMの描画性能を改善する設定として併用することが多い。

対処手順

  1. スタートメニューを開き、「cmd」と入力して「コマンド プロンプト」(Windowsでコマンドを入力するためのツール)を起動する。
    コマンドプロンプトの起動画面
  2. コマンドプロンプトに以下のコマンドを入力してJOSMを起動する。各オプションの意味は前節を参照のこと。

    以下はJOSMのjarファイル(Java実行形式ファイル)がC:\josm-tested.jarに保存されている場合の例である。ファイルパスは各自の環境に合わせて変更する。

     java -jar -Xmx1024m -Dsun.java2d.opengl=true C:\josm-tested.jar 
    コマンドプロンプトでのJOSM起動コマンド入力例