SvgExe is a tool that helps you create standalone, self-extracting jar files that automatically deploy external files and native libraries for the correct system. It has a step-by-step GUI for developers and cleans up after itself automatically, so your users never have to worry about more than one file.

I created this mostly to be used by Processing developers after Processing stopped supporting exporting applications for multiple systems, but I figured some Java developers might find a use for it as well, especially with the Java 7u51 "security fix" for applets and webstarts. I have an example tutorial that uses SvgExe to deploy a LWJGL game here.

SvgExe is also open-source on GitHub, and it might make a perfect jumping-on point for people who want to get into open-source development on a smaller project.

Hehe, that was me asking that question! I was trying to figure out the best way to package up a Processing application (which uses JOGL), and SvgExe is what I eventually came up with. The way JOGL does it was one of my inspirations for the tool!

Putting together a JOGL example should be really similar to the LWJGL example that already exists, so it should be pretty easy. I just have to find a little example JOGL project first...

Hehe, that was me asking that question! I was trying to figure out the best way to package up a Processing application (which uses JOGL), and SvgExe is what I eventually came up with. The way JOGL does it was one of my inspirations for the tool!

Putting together a JOGL example should be really similar to the LWJGL example that already exists, so it should be pretty easy. I just have to find a little example JOGL project first...

Then you have one more reason to make it work Let us know whether you need some help.

Yeah, I'm terrible at coming up with names. I used SVG because I originally created it for people uploading games to Static Void Games (Static Void Games = SVG, executable jar for SVG = SvgExe, told you I was terrible with names), but it's becoming more general for non-SVG use. I wonder if it's too late to change the name...

I'm not a JOGL expert, so let me know if anything isn't clear or should be reworded!

" and how to compile a your game's code separately from the L***L (LWJGL) library jar" is useless. In my humble opinion, it should be removed or reworded, you could write " and how to compile your game's code with JOGL", couldn't you?

Why have you decided to use a directory layout different of GlueGen one?

I thank you very much for your efforts, I'll add a link to your tutorial soon, it's a nice and very detailed tutorial anyway except that it gives the impression that JogAmp is a second class citizen by reminding that the developer has to be able to compile her/his game without using its main competitor (LWJGL) and the tutorial for JOGL appears in the very last position whereas Processing (Java) uses JOGL and one of your inspiration source is JOGL too. I'm really sorry, I don't want to be harsh, I'm sure that you have absolutely no bad intention and your tool is going to be very helpful in the current context because of the security changes done by Oracle but there is no need of being a JOGL expert to use it.

Finally, HeroesGraveDev's suggestion is fine to me. It says what it does.

The LWJGL mention was completely accidental, just because I copied and pasted the LWJGL tutorial to create the JOGL tutorial because the process is almost identical. Fixed now!

I went with a directory layout that's slightly different to give the user more freedom- now the architecture part of it is optional, and you can only use the top-level OS directories if you want. This was in response to a user request to be able to ignore the architecture level and only use the OS level, and it seems to work pretty well. I've tried to make the tool as general as possible instead of appealing directly to any one library.

The mention of LWJGL is gone (just a copy paste accident!), and the only reason it's on the bottom is because it's the last one I added! I can rearrange it if it's really a big deal, or heck, I could even give each a 50% chance to be on top every time the page is loaded, hahaha.

Thanks for taking a look at it, I'm pretty excited to be mentioned on the JOGL site!

PS- Should I be calling it JOGL or JogAmp? The tutorial only uses JOGL, but I've seen both...

PPS- I think I'm keeping the name, but I'll be sure to add what it does in parenthesis or something whenever I introduce it, just like I did in the title here. Hopefully that makes it obvious enough. :p It's already gained some traction on the Processing forum, which I think will be its main use.

I went with a directory layout that's slightly different to give the user more freedom- now the architecture part of it is optional, and you can only use the top-level OS directories if you want. This was in response to a user request to be able to ignore the architecture level and only use the OS level, and it seems to work pretty well. I've tried to make the tool as general as possible instead of appealing directly to any one library.

I see what you mean even though I hardly see a case in which you want to ignore the architecture. As long as it's useful for someone, it's cool

The mention of LWJGL is gone (just a copy paste accident!), and the only reason it's on the bottom is because it's the last one I added! I can rearrange it if it's really a big deal, or heck, I could even give each a 50% chance to be on top every time the page is loaded, hahaha.

As you used GlueGen as a source of inspiration and asked us some help, we deserve more than 50% chance

PS- Should I be calling it JOGL or JogAmp? The tutorial only uses JOGL, but I've seen both...

JogAmp includes JOGL, JOAL, JOCL and GlueGen. Use JogAmp where you can, for example when you mean "JOGL and GlueGen". You can add into your tutorial joal.jar and jocl.jar so that our developers won't forget those JARs as well.

PPS- I think I'm keeping the name, but I'll be sure to add what it does in parenthesis or something whenever I introduce it, just like I did in the title here. Hopefully that makes it obvious enough. :p It's already gained some traction on the Processing forum, which I think will be its main use.