Difference between openjdk-6-jre, openjdk-6-jre-headless, openjdk-6-jre-lib

You are correct in that you will need a JRE package to run any Java application.

Since you say you're running on an embedded platform I assume that the Java application you want to run has no GUI. In that case, you will be fine with openjdk-6-jre-headless. This is explained on the openjdk-6-jre-headless package page here "Minimal Java runtime - needed for executing non GUI Java programs".

As you can see from the debian package details page, openjdk-6-jre-headless depends on openjdk-6-jre-lib (among other packages), so that will get installed either way.

If however the Java application you want to run has a GUI, you will need openjdk-6-jre instead of openjdk-6-jre-headless


The main reason for having two distinct packages available are the dependencies of the packages. openjdk-6-jre will also depend on:

libasound2, libgif4, libjpeg62, libpng12-0, libpulse0 , libx11-6, libxext6, libxi6, libxrender1, libxtst6 and zlib1g

And contrary to the previous comment openjdk-6-jre depends on openjdk-6-jre-headless, making the latter really just a subset.

Tags:

Java

Openjdk