I have had a passing acquaintance with Hudson for some time, but it is only recently that I’ve had to get down and dirty with it. For one reason or another, much of the build infrastructure work for my current project has fallen on me. This has allowed me to become much more involved with Hudson on a daily basis, and I have to say I’m loving it.
Hudson is a continuous integration environment. We have configured it to check code out of our subversion repository on a regular basis, run the build scripts, gather the cobertura code coverage, junit test reports, findbugs reports, etc., and have these metrics published and trended over time. I think I can speak for my team when I say, we’ve found it a boon to be able to regularly build our system in a clean environment, and gain such insight into our code quality.
So without further ado, I present instructions to allow you to set your own build system up in 20 minutes or less. Continue reading →
Download the installation jar for GlassFish. I went with GlassFish V2, since this is the latest stable release, though I think this technique will work with any version listed on the download page.
2. Install it
The GlassFish V2 Installation instructions show how to install it once download is complete. The problem with the GlassFish installer is that it does not register as a service with Windows, so once you log out, the GlassFish instance will terminate.
3. Register as a Service.
There are a few ways of doing this. The Hard Way, or my favourite the Easy Way. Once the service is registered, GlassFish will continue to run once you log out, and can be controlled through the Services applet from Control Panel, though continued use of asadmin is recommended.
Alternatively, use Ubuntu, where you can install GlassFish as easy as:
The Services control panel applet is pretty handy for starting, stopping or otherwise configuring the services on your Windows operating system. That said, every now and again, as a software developer, I have to install or remove a service that I’m working on. Here’s how: