What is GlassFish?

I jumped down another rabbit hole trying to figure out how to get started with java ee without using an ide. Although IDE’s are very handy when it comes to Java development, they also are sometimes a crutch. For instance, if you want to transition to CI, do you actually know what commands the IDE runs when you right click and run tests?

First, I have no idea what Java EE actually is. There is something called GlassFish, which is an open source Java EE “reference implementation”. It also the same thing that is installed when you go to the main Java EE website.

Java EE does not support the latest Java JDK 1.9. On my Mac I had a tough time trying to get two versions of Java to run at the same time.

I think 99.9% of all tutorials about getting started with Java EE include using Netbeans or Eclipse. I wanted to write one that used the CLI. This involves using maven.

Maven has a concept called “archetypes” which creates the necessary directory structure for a new Java project. The main problem is that I could not find a bare bones archetype definition.

At the end of the day, I dug deep into the rabbit hole and came up empty. I will figure this out at some point and write a blog post about it.

2 replies on “What is GlassFish?”

Java EE is a specification, just like Java SE. It provides additional APIs for enterprise applications. It’s built on top of Java SE using the Java programming language.

I agree that IDEs are sometimes a crutch (although it is hard to push this concept in today’s world). I learned to program in a mini IDE called BlueJay that does not have code completion and does not obfuscate the details of how the programs are being run. The only thing it gives you over the command line is basically a little file manager where you can see how your libraries are organized. I kept using this program for almost two years, and I am a much better Java programmer because of it. That happens when you type every line and every pair of braces of all the code you write, from scratch!

However, I would not suggest you try to jump into Java EE this way, as you will find the initial learning curve quite daunting. Far better, in my opinion, to go into it with Eclipse and then move to the command ine once you know what you are doing.

Just a thought.

Thanks for the comments.

My biggest point of confusion is what I mentioned early on in the post:

> For instance, if you want to transition to CI, do you actually know what commands the IDE runs when you right click and run tests?

Do you know of an easy way to expose what commands are being ran by netbeans, eclipse, or intelliJ?

Leave a Reply