So I was able to implement the first part of my deployment
proposal -- splitting out the command-line processing from the Deployer
GBean, and making it take advantage of JSR-88 where appropriate. Among
other things, the deploy tool now figures out whether the server is
already running (by checking for a live JMX connector) and can hot deploy
(and start and stop) if the server is up.
However, if I check this in, it will make the deployer depend on
the JSR-88 API. There doesn't seem to be a good way around that, since
we'd have to duplicate all the logic in the JSR-88 commands to get the
same features without the API dependence -- and they are nice features.
Still, I know compactness of the essentials is a goal. I could always
split out a separate "J2EE deployer". That would have the advantage of
dropping the need to handle some of the oddball arguments (mainClass,
classPath, carFile) and making the implementation a little cleaner, but
I'm not sure if having 2 deployers is really an advantage.
Aaron