Compare commits

..

No commits in common. "master" and "feature/24259" have entirely different histories.

3 changed files with 17 additions and 72 deletions

View File

@ -1,19 +1,10 @@
# Changelog for Maven-Parent # Changelog for Maven-Parent
## [v1.2.0] - 2024-04-03 ## [v1.2.0-SNAPSHOT] - 2023-05-02
### Bug
* update maven-javadoc-plugin to from 2.6.8 to 3.6.3. #25877
* update groovy-all plugin dependency from 3.0.0-beta to 3.0.13 #25872
### Features ### Features
* new maven profiles for managing jdk7 (gcore-legacy) and jdk17 build (see #24259) * new maven profiles for managing jdk7 (gcore-legacy) and jdk17 build (see #24259)
* add new group repositories for managing jdk17 dependencies resolution * add new group repositories for managing jdk17 dependencies resolution
* update groovy-maven and javadoc plugin configuration #25108
* add classpath external folder. see #25106
### Bug
* removed set-local-classpath profile. see #26841
## [v1.1.0] - 2022-10-27 ## [v1.1.0] - 2022-10-27

View File

@ -3,7 +3,7 @@
A parent pom for all the gCube artifacts. A parent pom for all the gCube artifacts.
# Enforcements # Enforcements
* Java 8 (target and source) unless otherwise specified inside the pom * Java 8 (target and source)
* OpenJDK as target Java VM. * OpenJDK as target Java VM.
* Maven 3.3.9+ * Maven 3.3.9+
* README.md, CHANGELOG.md and LICENSE.md are present in the baseDir of each Maven module * README.md, CHANGELOG.md and LICENSE.md are present in the baseDir of each Maven module
@ -11,41 +11,19 @@ A parent pom for all the gCube artifacts.
# Build Profiles # Build Profiles
The build profiles are separated in three main branches: developer, staging, releases. ## gcube-developer
Each branch has a set of profile based on the idk.
The developer branch contains the profiles related to the snapshot build:
* gcore-legacy jdk7
* gcube-legacy - jdk8
* gcube-official -jdk11
* gcube-experimental - jdk17
In the same way are organised the other branch profiles related to the staging (integration) phase and to the release phase.
In addition there are a set of common profiles useful in order to avoid replication of plugins and rules definitions:
* common-snapshot
* common-release
* dry-run
* disable-java8-doclint
* set-local-classpath
* generate-distribution-packages
Below the descriptions of the most used profiles by gCube components:
## common-snapshot
This profile defines the common plugin used by all the snapshot profiles
## common-releases
This profile defines the common plugin used by all the staging and release profiles
## gcube-official
* Dependencies resolved against local, gcube-snapshots and gcube-releases * Dependencies resolved against local, gcube-snapshots and gcube-releases
* Snapshot artifacts installed to local * Snapshot artifacts installed to local
* Snapshot artifacts deployed to gcube-snapshots * Snapshot artifacts deployed to gcube-snapshots
* Deployments of releases artifacts are not permitted * Deployments of releases artifacts are not permitted
## jenkins-staging-official ## jenkins-snapshots
* Dependencies resolved against local-snapshots, gcube-snapshots and gcube-releases
* Snapshot artifacts installed to local-snapshots
* Snapshot artifacts deployed to gcube-snapshots
* Deployments of release artifacts are not permitted
## jenkins-staging
* Dependencies resolved against local-staging, gcube-jenkins-staging, gcube-staging and gcube-releases * Dependencies resolved against local-staging, gcube-jenkins-staging, gcube-staging and gcube-releases
* Release/snapshot artifacts installed to local-staging * Release/snapshot artifacts installed to local-staging
* Release/snapshot artifacts deployed to gcube-jenkins-staging * Release/snapshot artifacts deployed to gcube-jenkins-staging
@ -63,6 +41,3 @@ This profile disables the deployment of the artifacts.
This profile sets an additional parameter for javadoc generation to disables the doclint. This profile sets an additional parameter for javadoc generation to disables the doclint.
It avoids the build fails if formal/syntax errors are found in javadoc comments. It avoids the build fails if formal/syntax errors are found in javadoc comments.
## set-local-classpath
This profile set a generic folder that will be added to the classpath

35
pom.xml
View File

@ -5,7 +5,7 @@
<groupId>org.gcube.tools</groupId> <groupId>org.gcube.tools</groupId>
<artifactId>maven-parent</artifactId> <artifactId>maven-parent</artifactId>
<version>1.2.0</version> <version>1.2.0-SNAPSHOT</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<scm> <scm>
@ -78,20 +78,6 @@
<javadoc.opts>-Xdoclint:none</javadoc.opts> <javadoc.opts>-Xdoclint:none</javadoc.opts>
</properties> </properties>
</profile> </profile>
<!--profile set-local-classpath commented see #26841-->
<!--profile>
<id>set-local-classpath</id>
<activation>
<jdk>[1.8,)</jdk>
</activation>
<build>
<resources>
<resource>
<directory>${maven.local.classpath}</directory>
</resource>
</resources>
</build>
</profile-->
<profile> <profile>
<id>generate-distribution-packages</id> <id>generate-distribution-packages</id>
<activation> <activation>
@ -364,6 +350,7 @@
<name>!Release</name> <name>!Release</name>
</property> </property>
</activation> </activation>
<!-- Repositories for dependency resolution --> <!-- Repositories for dependency resolution -->
<repositories> <repositories>
<repository> <repository>
@ -412,7 +399,7 @@
<profile> <profile>
<id>gcube-legacy</id> <id>gcube-legacy</id>
<activation> <activation>
<jdk>[1.8,9)</jdk> <jdk>[1.8, 9)</jdk>
<property> <property>
<name>!Release</name> <name>!Release</name>
</property> </property>
@ -1489,12 +1476,13 @@
<goal>jar</goal> <goal>jar</goal>
</goals> </goals>
<configuration> <configuration>
<source>${java_version}</source>
<additionalparam>${javadoc.opts}</additionalparam> <additionalparam>${javadoc.opts}</additionalparam>
</configuration> </configuration>
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<plugin> <plugin>
<groupId>org.codehaus.gmaven</groupId> <groupId>org.codehaus.gmaven</groupId>
<artifactId>groovy-maven-plugin</artifactId> <artifactId>groovy-maven-plugin</artifactId>
@ -1520,16 +1508,8 @@
</configuration> </configuration>
</execution> </execution>
</executions> </executions>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>3.0.13</version>
<!--version>3.0.0-beta-3</version-->
<type>pom</type>
</dependency>
</dependencies>
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
@ -1545,7 +1525,7 @@
<plugin.assembly.version>2.6</plugin.assembly.version> <plugin.assembly.version>2.6</plugin.assembly.version>
<plugin.compiler.version>3.10.1</plugin.compiler.version> <plugin.compiler.version>3.10.1</plugin.compiler.version>
<plugin.source.version>2.1.2</plugin.source.version> <plugin.source.version>2.1.2</plugin.source.version>
<plugin.javadoc.version>3.6.3</plugin.javadoc.version> <plugin.javadoc.version>2.8</plugin.javadoc.version>
<plugin.resources.version>3.1.0</plugin.resources.version> <plugin.resources.version>3.1.0</plugin.resources.version>
<!-- default value for the distro directory --> <!-- default value for the distro directory -->
@ -1557,7 +1537,6 @@
<java.expected.vm>.*OpenJDK.*</java.expected.vm> <java.expected.vm>.*OpenJDK.*</java.expected.vm>
<maven.compiler.source>${java_version}</maven.compiler.source> <maven.compiler.source>${java_version}</maven.compiler.source>
<maven.compiler.target>${java_version}</maven.compiler.target> <maven.compiler.target>${java_version}</maven.compiler.target>
<!--maven.local.classpath>/opt/gcube/local-classpath</maven.local.classpath-->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.version>3.3.9</maven.version> <maven.version>3.3.9</maven.version>