SvgExe: Create Standalone Runnable Jars for Every System!

With the latest version of Processing, you can only export an application for the current system. In other words, if you're running Processing on Windows, people with a Mac computer won't be able to run the application you export. And the application that is exported is simply a folder that you have to zip up and send to people. This is obviously not ideal, as you can't guarantee that your users will have a specific type of computer or be comfortable enough with computers to unzip a file and run a .bat file.

I've created a tool that helps you export a standalone, self-extracting jar file. What this means is that your users will only have to worry about a single file, and that single file will extract (and afterwards delete) the correct libraries for the system they're running on.

The homepage for the tool can be found here:

And I've created a tutorial that takes you through the process of using the tool with a Processing sketch:

You can run the program by itself, or you can launch it directly from your Processing PDE:

Right now using the tool is a manual process (although it's an easy step-by-step GUI, so hopefully it's pretty painless), but I'm hoping to make the GUI more Processing-friendly. In fact, the project is on GitHub, so if you're looking to get into open-source development, this is a perfect jumping-on point!


  • It's awesome!!! ;-)

  • Cool, SvgExe is now an "official" tool, so you can get it directly from the PDE!

  • Looks like I might finally be able to upgrade my Processing2 version! Gonna check it out now. Thanks Kevin! Being able to code easily cross platform is the one thing that originally attracted me to Processing.

  • I've used SVGExe with a few of my programs and really appreciate you creating it Kevin. Cheers.

  • edited October 2016

    ? SVGExe / Jar Matey - no longer supported ?

  • You can still use it. It's not listed in the tools for Processing 3, but that's only because I haven't sent off the update email. It should still be compatible.

    You'll have to run it separately (which you can do just by running the JarMatey jar) and then follow the prompts. Instead of downloading the Processing zip I put together, just add your Processing lib jars directly.

    Let me know if you have any issues.

    But honestly, you might be better off trying to deploy as JavaScript using Processing.js or P5.js. The only reason to still use JarMatey is if you have to use a Java library.

    With Java's declining support on the client side, I'm not so sure running a jar is any easier than unzipping a directory with an executable. But it's up to you, and JarMatey should still work just fine.

Sign In or Register to comment.