Re: Package naming, disk organization
This is the one thing (so far) that I really don't like about Java. The
Oracle assumes that developers are corporations with web sites. The
You have been disabused of this notion by several in this thread.
Are you paying attention to the responses?
reality is that some are learning a new language, or developing software
for others, etc. So, the package name/path needs to reflect this
diversity. By the way, the idea for a source and a class path is
discussed by the Oracle at:
I should also point out that I'm a tad old[-]fashion[ed] (I guess) because I
Why the colorful characterization?
use an editor and command line. I do plan to go to an IDE - once I'm
Does "command line" for you include tools like Ant and Gradle?
told which one everyone wants to use.
I recommend you use the one you want to use. Don't be a sheep.
There are three commonly recommended, NetBeans, Eclipse and IntelliJ.
It makes no difference to anyone else which one you prefer, or if
you prefer none.
Ok, back to the subject. I want to obey the conventions, but not box
myself in or create future problems. So how about:
Three things, divergent.
You "obey" conventions (the correct term is "follow") in order to
facilitate social integration. It was ever thus.
Conventions are not strait jackets. Programmers are logical. Use what works.
* domain (used for general Java development for now): dboland
* source: home/user/javadev/dboland/proj_name/src
* classes: home/user/javadev/dboland/proj_name/classes
There are several conventions for the output of the compiler and other
build steps. Raw "classes" isn't really one of them. The IDEs and many
projects use "build/" or "bin/", and beneath that, "classes/".
The reason is that there are many artifacts, not just classes.
There is ample material online as to what is a good project structure.
I strongly suggest you look those up and follow them.
// I don't get the need for build/classes.
So you ignore it without investigation? Tsk.
You will have great difficulties in your programming life.
In this case you made the wrong decision for a large number of
real-world scenarios. Find out why, and under what circumstances
your choice is appropriate, and under which not.
* CLASSPATH: home/user/javadev/dboland
Nope. That will not work.
Classpath is the root of the *class* hierarchy, which you already
specified to be your "classes/" subdirectory. Study the docs.