Description
Archetype Plugin 3.3.0 introduced API incompatibilities that can break existing maven archetypes. This is significant because when the plugin is invoked by users the version of the plugin is rarely specified. An example of such a breakage is https://github.com/helidon-io/helidon/issues/9305 (where all previously shipped versions of our maven archetypes broke).
The incompatibilities were introduced by https://github.com/apache/maven-archetype/pull/211 and https://github.com/apache/maven-archetype/pull/215
Changes that broke our archetypes:
- The removal of ArchetypeGenerationRequest.getProjectBuildingRequest()
- The changing of the return type of ArchetypeGenerationRequest.getRemoteArtifactRepositories() from List<ArtifactRepository> to List<RemoteRepository>
It also looks like a number of other methods were removed from ArchetypeGenerationRequest.
As documented in https://maven.apache.org/archetype/maven-archetype-plugin/advanced-usage.html#post-generation-script the ArchetypeGenerationRequest object is the primary API for customization by a post-generation groovy script. And the changed/removed methods were not marked for deprecation. Any archetype released before 3.3.0 that relied on this class is potentially broken.
Attachments
Issue Links
- is caused by
-
ARCHETYPE-655 Get rid of Wagon API to download catalogs
- Closed
-
ARCHETYPE-673 Get rid of maven-artifact-transfer
- Closed
- links to