Java Runtime Environment

From OpenStreetMap Wiki
Jump to: navigation, search
Help
Available languages
English 日本語

There are many softwares in OSM depend on the Java Runtime Environment (JRE).

Pure Java applications have a big advantage. They can run on any operating system without the need for developers to prepare a binary package or a installer for each operating system. On the other hand java applications do require a "Java Runtime Environment" (JRE), and this installation does depend on the operating system you are running. This page explains how to install JRE on your machine and how to run a Java application though the Java runtime.

Contents

How to install

Windows

Mac OS X

Linux

Ubuntu

8.10 (Intrepid):

The latest version of JOSM and all the associated packages can be installed very simply with Ubuntu's Synaptic Package Manager.

Custom install on older versions of Ubuntu:

Be sure to adjust the path to your josm jar file.

Debian

Note: If you have another JVM installed and want to use SUN's java, start josm with

JAVACMD=/usr/lib/jvm/java-6-sun/bin/java josm

Gentoo

Standard installation with Portage:

emerge -av sun-jre-bin

Gentoo ebuild collections has some OSM Java applications. By installing one of it, you can install the JRE as a dependence. For example:

emerge -av josm

There are many plug-ins already available as ebuilds. Look at http://svn.openstreetmap.org/applications/utils/gentoo/ for a complete list. If you are interested in latest development version of java applications and extra plugins of them use the OpenStreetMap Gentoo Overlay.

openSUSE/Fedora/Mandriva

JOSM packages are available in the openSUSE's build service, in the Application:Geo repository.

Go to http://download.opensuse.org/repositories/Application:/Geo/, select you distibution and find the RPM in the noarch directory. Install using RPM or your favourite package manager.

Example for openSUSE 10.3 using zypper:

zypper ar http://download.opensuse.org/repositories/Application:/Geo/openSUSE_10.3
zypper ref
zypper in josm

The first command has changed slightly for openSUSE 11.0 (and openSUSE 11.1):

zypper ar http://download.opensuse.org/repositories/Application:/Geo/openSUSE_11.0/Application:Geo.repo
zypper ref
zypper in josm

Use this for openSUSE OneClick install:

 http://packages.opensuse-community.org/index.jsp?searchTerm=josm

FreeBSD

You can get a JRE binary package from http://www.freebsdfoundation.org/downloads/java.shtml . Installing the binary package as like this:

pkg_add diablo-jre-freebsd7.amd64.1.6.0.07.02.tbz

Of course, you can install JRE from ports collection:

cd /usr/ports/java/diablo-jre16/
make install clean

However, I don't recommend to compile JRE by ports because it takes long time and it needs JDK (Java Development Kit) to be installed. The JDK would be installed by using the package as the above and the JDK can run Java application, too. So compiling JRE is nonsense for you unless you want to be a FreeBSD ports developer.

How to run a Java application

Many Java applications come packaged as a file with the ".jar" extension

Double-click a jar

Many jar files are "runnable". This means you can simply double-click the file on many operating systems. The file contains details of which java class files to run by default, and the application just starts up. Easy!

This assumes a few things though. Firstly you'll need java installed as detailed above, and with the necessary operating system hooks enabled, and these may not be available for some operating systems.

Run it on a command terminal

This way is a more basic fundamental approach which you can use on any operating system. Some Java applications (for example, mkgmap.jar) cannot run without terminals.

It's not so hard even if you don't have any experience of command lines. For example for to run JOSM, type commands like this:

cd path_to_the_directory_that_JOSM_is_installed_in
java -jar josm.jar

then the JOSM runs.

You can add options on the command line. There are two kinds of options. One kind for initialising the Java Virtual Machine, the other for application options.

java [Options for JavaVM] -jar application.jar [Options for the application]

The following are commonly used options for the Java VM.

memory options
proxy options
graphic accelerations


The options for the application depend on each applications. See their page for these.

Where is the command terminal?

Windows

Usually, the JRE installer registers the .jar file type to be run by javaw.exe (which is another java running command. It is special for Windows to run Java GUI applications without terminals.) command. So you can run .jar just by doble-clicking it. However, this way cannot add options. To add options, you can choice from two ways.

Mac OS X

You need Mac OS 10.4 or better. 10.3 will not do the job. In 10.4.x and 10.5.x, simply double click on the jar file and Java 1.5 should load the .jar file. If you need to allocate more memory (in order to edit larger files or you get the 'strange things may happen' memory error),

  1. Go to Applications and then Utilities in Finder.
  2. Open Terminal
  3. Change to the directory where josm-latest.jar is... If it's on your desktop, try 'cd Desktop'
  4. Copy and paste the following line in to the terminal to start JOSM with more memory:
java -Xmx512M -jar josm-latest.jar

Include -Dapple.laf.useScreenMenuBar=true to place the menu on the OS X menu bar, and -Xdock:name="JOSM" -Xdock:icon="logo.png" to give it icon and name.

If you're not familiar with scripts just use the Jar Bundler application, coming with MacOS X. It'll create a start application, let's call it "JOSM!". You'll find it here /Developer/Applications/Java Tools/ or here /Developer/Applications/Utilities/. Just double click to launch it. In the first menu build information enter the location of the just downloaded JOSM jar file by clicking the choose... button. In the third menu properties choose the edit box vm options to enter the appropriate memory settings. If you're able to afford it try spending up to a GB RAM to JOSM. Here's what to enter into the edit box: -Xmx512M -XX:MaxPermSize=512M (which starts the JOSM application with 512MB and grants up to 1GB of RAM). Then press create application... to create the start application (call it JOSM!, f.e.). JOSM! does not have to be in the same directory as the jar file. Just save or move JOSM! to your applications folder. Double click JOSM! to start the JOSM aplication.

Linux, FreeBSD, (Mac OS X with a terminal)

Input a command line as the above is the basic. Usually the command line become long. It is better to make a shell script to run for each jars. There are some users make some useful shell scripts.

You can use a shell-script developed by User:Cobra to keep JOSM always up-to-date, start it, and pass files to it.

Or you can use the following simple script to use always the latest Josm Version:

#!/bin/sh
GPSDIR=/home/sven/Desktop/gps
PROXY=www-proxy
export JAVA_HOME=/usr/local/java/jdk1.6.0_04/
DCOPREF=`kdialog --title "Hole JOSM"  --progressbar "Hole JosmLatest" 100`
cd $GPSDIR
wget -N http://josm.openstreetmap.de/download/josm-latest.jar
dcop "$DCOPREF"  close
$JAVA_HOME/bin/java -Xmx1024M -DproxyHost=$PROXY -DproxyPort=8080 -jar josm-latest.jar

If you use Ubuntu 8.04 LTS or Debian and install JOSM via package, you will simply use josm.

Ubuntu users have a good tutorial at UbuntuForums.

There are also some tutorial videos. One describes the steps to set up KDE for starting JOSM by clicking on the JAR file. Get the tutorials from one of the mirrors listed at openstreetmap.de.

Personal tools
Namespaces
Variants
Actions
site
Toolbox