Where can I find a Java deployment tool which, when given a particular class, will find all of the classes needed to be able to execute that class (and, build a .jar of all of those classes)?
Brian Sullivan DashO will do so when all the classes are statically linked to one another, but reflection usage gives problems to all such products. As an example, think of asking the user for a String, and then doing a Class.forName(userResponse) and invoking the first method; it's absolutely impossible to predetermine which classes would be required in such a case. Dash-O does allow the classes the programmer knows are required for reflection to be explicitly loaded into the project, though, which helps with plugin style programming. It's worth the time to do the deployment right. (I use Dash-O on a regular basis for our deployments, though I build to directory, not to Jar; I have custom scripts for building custom jars.)