Another argument against putting the common code in a separate jar (e.g. derbycommon.jar) is that both the embedded driver and client driver will be spread across two jar files. This is the case for the IBM DB2 Universal driver and while it was the only client for the Derby network server, we had several complaints about the two jar files. This was because several JDBC tools expect a driver to be in a single jar, e.g. they pop up a dialog to allow you to specify the location for a single jar. Folks worked around this by re-jarring the IBM driver into a single jar, I do not think this is a good approach for Derby.
Dan.
