I'm developing a source generation plugin as a project module with the
following structure:

project/
  plugin/
  api/
  impl/

where the plugin is part of the reactor build process.  The plugin
builds first and is used by the api and impl builds.

As a good plugin developer citizen, I'd like to make sure the build is
incremental when appropriate, so timestamp checks are used to avoid
unnecessary regeneration of target files from source files during the
api and impl builds.

In addition, this incremental behavior should be avoided when the
plugin itself has been updated because the previously generated api
and impl results are no longer guaranteed to be valid.  The
plugin-up-to-date check can be verified using the timestamp of the
plugin dependency JAR itself.

Unfortunately, even when there is nothing to compile and no new
resources to package, the install goal still copies the plugin JAR to
the local repository, updating the timestamp and defeating the
plugin-up-to-date check.

Would it be reasonable to make the install goal incremental as well? 
For example, if nothing has changed and the local repository JAR has
the same timestamp as the JAR sitting in project/plugin/target, then
no need to copy?

Kind Regards,
John Fallows.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to