[
https://issues.apache.org/jira/browse/ISIS-1977?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dan Haywood updated ISIS-1977:
------------------------------
Notes while trial and error (this was done on incode-platform, but same
principles apply for any multi-module project)
1
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<parent>resolve</parent>
<name>resolve</name>
<description>resolve</description>
<url>resolve</url>
<scm>resolve</scm>
<developers>resolve</developers>
<properties>resolve</properties>
<dependencyManagement>resolve</dependencyManagement>
<dependencies>resolve</dependencies>
<profiles>resolve</profiles>
</pomElements>
</configuration>
2
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<!--
<pomElements>
<parent>resolve</parent>
<name>resolve</name>
<description>resolve</description>
<url>resolve</url>
<scm>resolve</scm>
<developers>resolve</developers>
<properties>resolve</properties>
<dependencyManagement>resolve</dependencyManagement>
<dependencies>resolve</dependencies>
<profiles>resolve</profiles>
</pomElements>
-->
</configuration>
3.
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<parent>resolve</parent>
</pomElements>
<!--
<name>resolve</name>
<description>resolve</description>
<url>resolve</url>
<scm>resolve</scm>
<developers>resolve</developers>
<properties>resolve</properties>
<dependencyManagement>resolve</dependencyManagement>
<dependencies>resolve</dependencies>
<profiles>resolve</profiles>
-->
</configuration>
4.
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<parent>resolve</parent>
<name>resolve</name>
<description>resolve</description>
<url>resolve</url>
<scm>resolve</scm>
<developers>resolve</developers>
<properties>resolve</properties>
</pomElements>
<!--
<dependencyManagement>resolve</dependencyManagement>
<dependencies>resolve</dependencies>
<profiles>resolve</profiles>
-->
</configuration>
7. no real difference from 4 for bom.
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<parent>resolve</parent>
<name>resolve</name>
<description>resolve</description>
<url>resolve</url>
<scm>resolve</scm>
<developers>resolve</developers>
<properties>resolve</properties>
<dependencies>resolve</dependencies>
</pomElements>
<!--
<dependencyManagement>resolve</dependencyManagement>
--> <profiles>resolve</profiles>
</configuration>
-----------------------------------------------------------------------------------------------------
5. NO!!
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<parent>resolve</parent>
<name>resolve</name>
<description>resolve</description>
<url>resolve</url>
<scm>resolve</scm>
<developers>resolve</developers>
<properties>resolve</properties>
<profiles>resolve</profiles>
</pomElements>
<!--
<dependencyManagement>resolve</dependencyManagement>
<dependencies>resolve</dependencies>
-->
</configuration>
6. NO!!
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<parent>resolve</parent>
<name>resolve</name>
<description>resolve</description>
<url>resolve</url>
<scm>resolve</scm>
<developers>resolve</developers>
<properties>resolve</properties>
<dependencyManagement>resolve</dependencyManagement>
</pomElements>
<!--
<dependencies>resolve</dependencies>
--> <profiles>resolve</profiles>
</configuration>
8: same as 2, but -Dflatten (in profile); still only in incode-parent.
- rationale: we don't want regular pom's that inherit from incode-parent to
have flattening applied
9: same as 3 but also properties, but in -Dflatten profile.
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<parent>resolve</parent>
<properties>resolve</properties>
</pomElements>
<!--
<name>resolve</name>
<description>resolve</description>
<url>resolve</url>
<scm>resolve</scm>
<developers>resolve</developers>
<dependencyManagement>resolve</dependencyManagement>
<dependencies>resolve</dependencies>
<profiles>resolve</profiles>
-->
</configuration>
10: as 9, but removes <properties>. For module-base, configures -Dflatten
profile as 'defaults', ie simply:
<configuration>
<flattenMode>defaults</flattenMode>
<updatePomFile>true</updatePomFile>
</configuration>
10 (overwrites above), for module-base, add in: - NO
<configuration>
<flattenMode>defaults</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<name>resolve</name>
<description>resolve</description>
</pomElements>
</configuration>
11 for module-base, change to bom - NO
<configuration>
<flattenMode>bom</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<name>resolve</name>
<description>resolve</description>
</pomElements>
</configuration>
-- adds in a
url, developers, license, scm, properties
12 for module-base, change to oss - NO
<configuration>
<flattenMode>oss</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<name>resolve</name>
<description>resolve</description>
</pomElements>
</configuration>
-- removes just
properties
13 for module-base, back to bom and add: - YES
<configuration>
<flattenMode>defaults</flattenMode>
<updatePomFile>true</updatePomFile>
<pomElements>
<name>resolve</name>
<description>resolve</description>
<dependencies>resolve</dependencies>
</pomElements>
</configuration>
-- seems to flatten
test dependencies also.
> Improve flattening for -Drevision=...
> -------------------------------------
>
> Key: ISIS-1977
> URL: https://issues.apache.org/jira/browse/ISIS-1977
> Project: Isis
> Issue Type: Improvement
> Components: Core
> Affects Versions: 1.16.2
> Reporter: Dan Haywood
> Assignee: Dan Haywood
> Priority: Minor
> Fix For: 1.16.3
>
>
> Currently flatten-maven-plugin is inherited from the parent pom to all
> children, and this results in ,<dependencyManagement> beingĀ
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
