I own a vps in which I run various servers from. One of those things is a Minecraft server. Recently I also installed a teamspeak server following a tutorial. This server however started up automatically on boot and would run even if I did not have an ssh window open running the process. I then attempted to create a similar start up script for my Minecraft server. However I could not do it successfully. I looked up the formatting codes and instructions on the official help page, but when I boot up the Minecraft server it does not auto start like the team speak server. Note: I know screen is an option however I prefer not to use it. The startupscript for team speak was placed in the init.d folder and now runs as long as the server is up despite if I am connected to it or not.
I've had the same issue when I was setting up a minecraft server on Debian. The following advice should apply to Ubuntu as well.
There are several scripts available. The minecraft wiki has a list at the bottom linking to some popular scripts. However, I'd personally recommend Athenus' minecraft init script, which also contains some nice features like world backup and log rotation. It uses screen like many other scripts, but to be honest I think that's a good thing, because that way you can always attach to the console of your server if you ever need it.
Alternatively, you can write your own init script, by using something like this as a template. You just need to tweak the
stop procedures, which shouldn't be that difficult if you have a bit of experience with the terminal.