Installing on Windows

Download JPO Java Picture Organizer Travis Build Status

SourceForge download area


Java Web Start

Development Version (0.13)


Current Version (0.13)


Old Version (0.12)


Old Version (0.9)

Scary Warnings

I have not figured out how do get a certificate with which to sign this Free Open Source Software. Consequently Java, your browser and everyone else feel they are at liberty to pop up increasingly alarmist messages warning against the use of this software. At this point all I can recommend is that you click away the warnings and use JPO if you find it useful.

If you have any suggestions on how to improve on this state of affairs, please get in touch with me.

Note: You will see the following warning screen:

Potential problem: Your browser needs to know that it should start "Java Web Start" when it downloads a .jnlp extension file (Mimetype application/x-java-jnlp-file). If your browser doesn't have the right association you can run it from the command line or by creating a desktop icon. The command looks like this:

javaws http://j-po.sourceforge.net/jpo-stable.jnlp

Often you will need to know where the javaws program was installed. On Windows do a search for javaws.exe. On Linux you can do
find / -name javaws -print

System Requirements

JPO is a pure Java application so it runs on any computer that runs Java.

You need a recent Java runtime installation. You must have Java 1.8.0 or later. Use the command java -version to find out what version you are running if you aren't sure.

You can download the Java Runtime Environment (JRE) or the Java Software Development Kit (SDK) here: http://www.java.com/en/download/index.jsp Get the JRE is you just want to run java programs. Get the SDK if you want to develop code.

Dealing with bitmaps inside the JVM consumes huge amounts of memory. On low specified machines this can become frustrating when the operating system decides to spend minutes swapping memory around. You should be OK if you have more than 512MB and are dealing with 6 Megapixel images. You can tweak things by changing the amount of pictures JPO is allowed to cache in the settings. You can also tweak the amount of memory allocated to the JVM but you will need to make a local installation described below.


Local Installation

First download the jar file and save it in your program directory:
jpo-0.13.jar or jpo-0.13.jar

Note: Make sure they retain the .jar file extension. One Microsoft XP computer I saw saved the file with a .zip extension. Java then was not able to read the code.

Then you need to create a script or batch file to run everything. On Linux the script would look like this:

/PATH/TO/YOUR/JAVA/bin/java -XX:+AggressiveHeap -classpath /PATH/TO/YOUR/JPO/JAR/jpo-0.13.jar Main

Note: Put everything on one long line.

On a particular Windows XP machine I installed Jpo into c:\Program Files\Jpo. The resulting Batch file looks like this: (you can download it here: Jpo.bat

c:\windows\system32\java -XX:+AggressiveHeap -jar "c:\Program Files\Jpo\jpo-0.13.jar"


Potential problems:

Memory settings:

If you get out of Memory errors then you are probably best off using the local jar way of starting this application as you can then set the initial memory heap with the -Xms and the maximum memory heap with the -Xmx parameters. Of course this can also be done on the web start version but you would have to set Jpo up on your own webserver so that you could specify the memory settings in the .jnlp configuration file.

I have discovered the option -XX:+AggressiveHeap which sounds great for what JPO needs. Please let me know if you have issues with this.

Chinese Font

Franklin He has been kind enough to translate the User Interface to Traditional and Simplified Chinese. This looks really cool but poses some installation hassles if your Java system is not correctly configured. When I had a SuSE 10 system I had to create a /usr/java/jdk1.5.0_07/jre/lib/fontconfig.SuSE.properties file. Click here to download my version.

Java Version

I develop on Linux with the latest Oracle Java. You should always keep your software up-to-date too because of the the vulnerabilities that keep getting fixed. But sometimes there are reasons (that Mordac , the preventer of Information Services in Dilbert can justify) that prevent you from having a current Java installation. What happens then is that the code I compiled is not compatible with your Java Virtual Machine and you get an error. Java still gives you half a page full of cryptic junk. If the first line says Unsupported major.minor version 51.0 then that is the problem. If you can't upgrade your Java due to "Mordac" or don't want to get dirty with the source-code and compile your own send me an email and perhaps I can compile for an old version for you. Currently I am compiling to Java version 1.8 on a Java 8 compiler.

Please let me know of specific installation issues you have so that I may extend this section for the benefit of other users who might have the same issue.


Last update to this page: 5 Dec 2015
Copyright 2003-2016 by Richard Eigenmann, Zürich, Switzerland