Naming your packages in Java seems pretty straight forward, but by changing your naming conventions a little you can track your dependencies a lot better.
The usual standard for a package name seems to be url.application.module
So something like : com.captrespect.roxorapp.dao
But what happens when the same class can be used in different applications and is not application specific? How do you tell which classes are specific to your app and which are not?
It may be best to not violate the DRY (Don't repeat yourself) principal and go the trouble of packaging all my potential common classes into a common jar. A good programmer will eventually refactor the code down to this if need be. But this is not trivial work, you've got an app to finish, and you aren't even sure if the class is going to be used in other applications at all. (But want to leave the option open)
Say for example, com.captrespect.roxorapp.dao has two classes in it:
RoxorDAO.java
QueryExecuter.java
RoxorDAO will use the generic class QueryExecuter to run the queries. QueryExecuter has nothing to do with RoxorApp and is a candidate for one day being refactored into a common jar.
To be able tell this at a glance, change your package naming conventions a little. So you would have
com.captrespect.dao.QueryExecuter and
com.captrespect.roxorapp.dao.RoxorDAO
Just because the source of the QueryExecuter is in your application, doesn't mean that you should name it that way.
This has minimal impact on your application while making it easy move the QueryExecuter into a separate common jar all without having to rename the package and make edits to all your dao's later.
Of course there is always a downside, mainly with logging.
If you are using log4j, you won't be able to configure the logger for the whole app with just one line: com.captrepsect.roxorapp=DEBUG
This will come into play when you have more than one application deployed on the same server.
But I see this as a limitation with the logger, and the benefits outweigh the cost of a few extra lines in your log4j.properties file.