Compare commits

...

No commits in common. "c8-stream-201902" and "stream-javapackages-bootstrap-202501-rhel-9.6.0" have entirely different histories.

16 changed files with 653 additions and 300 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

37
.gitignore vendored
View File

@ -1 +1,36 @@
SOURCES/apache-maven-3.6.2-src.tar.gz
/results_*
/*.src.rpm
/apache-maven-3.0-src.tar.gz
/apache-maven-3.0.2-src.tar.gz
/apache-maven-3.0.3-RC1-src.tar.gz
/apache-maven-3.0.3-src.tar.gz
/apache-maven-3.0.4-src.tar.gz
/apache-maven-3.0.5-src.tar.gz
/apache-maven-3.1.0-src.tar.gz
/apache-maven-3.1.1-src.tar.gz
/apache-maven-3.2.0-src.tar.gz
/apache-maven-3.2.1-src.tar.gz
/apache-maven-3.2.2-src.tar.gz
/apache-maven-3.2.3-src.tar.gz
/apache-maven-3.2.5-src.tar.gz
/apache-maven-3.3.0-src.tar.gz
/apache-maven-3.3.1-src.tar.gz
/apache-maven-3.3.3-src.tar.gz
/apache-maven-3.3.8-src.tar.gz
/apache-maven-3.3.9-src.tar.gz
/apache-maven-3.4.0-SNAPSHOT-src.tar.gz
/apache-maven-3.5.0-src.tar.gz
/apache-maven-3.5.2-src.tar.gz
/apache-maven-3.5.3-src.tar.gz
/apache-maven-3.5.4-src.tar.gz
/apache-maven-3.6.1-src.tar.gz
/apache-maven-3.6.2-src.tar.gz
/apache-maven-3.6.3-src.tar.gz
/apache-maven-3.8.4-src.tar.gz
/apache-maven-3.8.5-src.tar.gz
/apache-maven-3.8.6-src.tar.gz
/apache-maven-3.9.1-src.tar.gz
/apache-maven-3.9.4-src.tar.gz
/apache-maven-3.9.6-src.tar.gz
/apache-maven-3.9.9-src.tar.gz

View File

@ -1 +0,0 @@
373ffbe9fc88e5facbe10d7a6f6badd243545ade SOURCES/apache-maven-3.6.2-src.tar.gz

View File

@ -1,14 +1,14 @@
From 056c94f86450c7c27f5bb11f98653c73bfe3d8e4 Mon Sep 17 00:00:00 2001
From abda3bfec41730810ee98e685b128f27ddc24c36 Mon Sep 17 00:00:00 2001
From: Michael Simacek <msimacek@redhat.com>
Date: Wed, 1 Feb 2017 14:54:26 +0100
Subject: [PATCH 1/4] Adapt mvn script
Subject: [PATCH 1/3] Adapt mvn script
---
apache-maven/src/bin/mvn | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
apache-maven/src/bin/mvn | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/apache-maven/src/bin/mvn b/apache-maven/src/bin/mvn
index a554c6617..0c07ba6e2 100755
index a3004f917..9b118717e 100755
--- a/apache-maven/src/bin/mvn
+++ b/apache-maven/src/bin/mvn
@@ -22,7 +22,7 @@
@ -17,15 +17,23 @@ index a554c6617..0c07ba6e2 100755
#
-# JAVA_HOME Must point at your Java Development Kit installation.
+# JAVA_HOME (Optional) Must point at your Java Development Kit installation.
# MAVEN_ARGS (Optional) Arguments passed to Maven before CLI arguments.
# MAVEN_OPTS (Optional) Java runtime options used when Maven is executed.
# MAVEN_SKIP_RC (Optional) Flag to disable loading of mavenrc files.
# -----------------------------------------------------------------------------
@@ -33,12 +33,24 @@ if [ -z "$MAVEN_SKIP_RC" ] ; then
@@ -30,20 +30,22 @@
if [ -z "$MAVEN_SKIP_RC" ] ; then
- if [ -f /usr/local/etc/mavenrc ] ; then
- . /usr/local/etc/mavenrc
- fi
-
if [ -f /etc/mavenrc ] ; then
. /etc/mavenrc
fi
+ if [ -f /etc/java/maven.conf ] ; then
+ . /etc/java/maven.conf
+ if [ -z "$JAVA_HOME" ] ; then
+ . /etc/java/maven@{maven_version_suffix}.conf
+ fi
+
if [ -f "$HOME/.mavenrc" ] ; then
@ -34,18 +42,12 @@ index a554c6617..0c07ba6e2 100755
fi
+if [ -f /usr/share/java-utils/java-functions ] ; then
+ . /usr/share/java-utils/java-functions
+ set_jvm
+ set_javacmd
+fi
+export JAVA_HOME
+export JAVACMD
+
# OS specific support. $var _must_ be set to either true or false.
cygwin=false;
mingw=false;
@@ -63,7 +75,8 @@ done
@@ -68,7 +70,8 @@ done
saveddir=`pwd`
@ -56,5 +58,5 @@ index a554c6617..0c07ba6e2 100755
# make it fully qualified
MAVEN_HOME=`cd "$MAVEN_HOME" && pwd`
--
2.21.0
2.39.2

View File

@ -1,24 +1,23 @@
From 7610a10691e680db00edcbd4ce6767a30641cd71 Mon Sep 17 00:00:00 2001
From a59ddba0d41b0ba1ea9c8c6ac541a71d737cdf30 Mon Sep 17 00:00:00 2001
From: Michael Simacek <msimacek@redhat.com>
Date: Tue, 6 Jun 2017 13:47:43 +0200
Subject: [PATCH 2/4] Invoke logback via reflection
Subject: [PATCH 2/3] Invoke logback via reflection
---
.../logging/impl/LogbackConfiguration.java | 19 ++++++++++++++-----
1 file changed, 14 insertions(+), 5 deletions(-)
.../cli/logging/impl/LogbackConfiguration.java | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/LogbackConfiguration.java b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/LogbackConfiguration.java
index 5d9fab744..ced38cb5a 100644
index 4dc5a37b8..a977ba085 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/LogbackConfiguration.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/LogbackConfiguration.java
@@ -35,22 +35,31 @@
@@ -31,21 +31,29 @@
public class LogbackConfiguration extends BaseSlf4jConfiguration {
@Override
public void setRootLoggerLevel( Level level )
{
public void setRootLoggerLevel(Level level) {
- ch.qos.logback.classic.Level value;
+ String value;
switch ( level )
{
switch (level) {
case DEBUG:
- value = ch.qos.logback.classic.Level.DEBUG;
+ value = "DEBUG";
@ -34,14 +33,13 @@ index 5d9fab744..ced38cb5a 100644
+ value = "ERROR";
break;
}
- ( (ch.qos.logback.classic.Logger) LoggerFactory.getLogger( Logger.ROOT_LOGGER_NAME ) ).setLevel( value );
+ Logger logger = LoggerFactory.getLogger( Logger.ROOT_LOGGER_NAME );
- ((ch.qos.logback.classic.Logger) LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME)).setLevel(value);
+ Logger logger = LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
+ try {
+ Class<?> levelClass = Class.forName("ch.qos.logback.classic.Level");
+ Object logbackLevel = levelClass.getField(value).get(null);
+ Class<?> loggerClass = Class.forName("ch.qos.logback.classic.Logger");
+ loggerClass.getMethod("setLevel", new Class<?>[] {levelClass})
+ .invoke(logger, new Object[] {logbackLevel});
+ loggerClass.getMethod("setLevel", new Class<?>[] {levelClass}).invoke(logger, new Object[] {logbackLevel});
+ } catch (Exception e) {
+ throw new RuntimeException("Failed to initialize logback configuration", e);
+ }
@ -49,5 +47,5 @@ index 5d9fab744..ced38cb5a 100644
@Override
--
2.21.0
2.39.2

View File

@ -0,0 +1,89 @@
From ad1e669b96a5d251c36384e89d535b9c712a6246 Mon Sep 17 00:00:00 2001
From: Marian Koncek <mkoncek@redhat.com>
Date: Thu, 5 Sep 2019 15:21:04 +0200
Subject: [PATCH 3/3] Remove dependency on powermock
---
.../StringSearchModelInterpolatorTest.java | 59 -------------------
1 file changed, 59 deletions(-)
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringSearchModelInterpolatorTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringSearchModelInterpolatorTest.java
index b2612e540..20b7162e2 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringSearchModelInterpolatorTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringSearchModelInterpolatorTest.java
@@ -35,8 +35,6 @@
import static org.hamcrest.CoreMatchers.anyOf;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
-import static org.powermock.reflect.Whitebox.getField;
-import static org.powermock.reflect.Whitebox.getInternalState;
/**
* @author jdcasey
@@ -344,63 +342,6 @@ public void testInterpolateObjectWithPomFile() throws Exception {
is(System.getProperty("user.dir") + File.separator + '.' + File.separator + "target"))));
}
- public void testNotInterpolateObjectWithFile() throws Exception {
- Model model = new Model();
-
- File baseDir = new File(System.getProperty("user.dir"));
-
- Properties p = new Properties();
-
- ObjectWithNotInterpolatedFile obj = new ObjectWithNotInterpolatedFile(baseDir);
-
- StringSearchModelInterpolator interpolator = (StringSearchModelInterpolator) createInterpolator();
-
- ModelBuildingRequest config = createModelBuildingRequest(p);
-
- SimpleProblemCollector collector = new SimpleProblemCollector();
- interpolator.interpolateObject(obj, model, new File("."), config, collector);
- assertProblemFree(collector);
-
- //noinspection unchecked
- Map<Class<?>, ?> cache = (Map<Class<?>, ?>)
- getField(StringSearchModelInterpolator.class, "CACHED_ENTRIES").get(null);
-
- Object objCacheItem = cache.get(Object.class);
- Object fileCacheItem = cache.get(File.class);
-
- assertNotNull(objCacheItem);
- assertNotNull(fileCacheItem);
-
- assertThat(((Object[]) getInternalState(objCacheItem, "fields")).length, is(0));
- assertThat(((Object[]) getInternalState(fileCacheItem, "fields")).length, is(0));
- }
-
- public void testNotInterpolateFile() throws Exception {
- Model model = new Model();
-
- File baseDir = new File(System.getProperty("user.dir"));
-
- Properties p = new Properties();
-
- StringSearchModelInterpolator interpolator = (StringSearchModelInterpolator) createInterpolator();
-
- ModelBuildingRequest config = createModelBuildingRequest(p);
-
- SimpleProblemCollector collector = new SimpleProblemCollector();
- interpolator.interpolateObject(baseDir, model, new File("."), config, collector);
- assertProblemFree(collector);
-
- //noinspection unchecked
- Map<Class<?>, ?> cache = (Map<Class<?>, ?>)
- getField(StringSearchModelInterpolator.class, "CACHED_ENTRIES").get(null);
-
- Object fileCacheItem = cache.get(File.class);
-
- assertNotNull(fileCacheItem);
-
- assertThat(((Object[]) getInternalState(fileCacheItem, "fields")).length, is(0));
- }
-
public void testConcurrentInterpolation() throws Exception {
final Model model = new Model();
--
2.39.2

View File

@ -1,51 +0,0 @@
From c8933d155694ce37b1d4be59a744c8f7cbde6bb5 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Mon, 1 Jul 2019 09:51:56 +0200
Subject: [PATCH 4/4] Use non-shaded HTTP wagon
---
apache-maven/pom.xml | 15 ---------------
pom.xml | 1 -
2 files changed, 16 deletions(-)
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index 2686570af..d22ae121d 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -63,21 +63,6 @@ under the License.
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-http</artifactId>
- <classifier>shaded</classifier>
- <exclusions>
- <exclusion>
- <groupId>org.apache.httpcomponents</groupId>
- <artifactId>httpclient</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.httpcomponents</groupId>
- <artifactId>httpcore</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.maven.wagon</groupId>
- <artifactId>wagon-http-shared</artifactId>
- </exclusion>
- </exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
diff --git a/pom.xml b/pom.xml
index 237cdc39e..85436c54d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -324,7 +324,6 @@ under the License.
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-http</artifactId>
<version>${wagonVersion}</version>
- <classifier>shaded</classifier>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
--
2.21.0

View File

@ -1,96 +0,0 @@
From f6eb583525c7f777bde16182c57a47345fd53cb0 Mon Sep 17 00:00:00 2001
From: Marian Koncek <mkoncek@redhat.com>
Date: Thu, 5 Sep 2019 15:21:04 +0200
Subject: [PATCH] Remove dependency on powermock
---
.../StringSearchModelInterpolatorTest.java | 66 -------------------
1 file changed, 66 deletions(-)
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringSearchModelInterpolatorTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringSearchModelInterpolatorTest.java
index b66abca..a5b2aa0 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringSearchModelInterpolatorTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringSearchModelInterpolatorTest.java
@@ -36,8 +36,6 @@ import java.util.concurrent.FutureTask;
import static org.hamcrest.CoreMatchers.anyOf;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
-import static org.powermock.reflect.Whitebox.getField;
-import static org.powermock.reflect.Whitebox.getInternalState;
/**
* @author jdcasey
@@ -374,70 +372,6 @@ public class StringSearchModelInterpolatorTest
) ) );
}
- public void testNotInterpolateObjectWithFile()
- throws Exception
- {
- Model model = new Model();
-
- File baseDir = new File( System.getProperty( "user.dir" ) );
-
- Properties p = new Properties();
-
- ObjectWithNotInterpolatedFile obj = new ObjectWithNotInterpolatedFile( baseDir );
-
- StringSearchModelInterpolator interpolator = (StringSearchModelInterpolator) createInterpolator();
-
- ModelBuildingRequest config = createModelBuildingRequest( p );
-
- SimpleProblemCollector collector = new SimpleProblemCollector();
- interpolator.interpolateObject( obj, model, new File( "." ), config, collector );
- assertProblemFree( collector );
-
- //noinspection unchecked
- Map<Class<?>, ?> cache =
- (Map<Class<?>, ?>) getField( StringSearchModelInterpolator.class, "CACHED_ENTRIES" )
- .get( null );
-
- Object objCacheItem = cache.get( Object.class );
- Object fileCacheItem = cache.get( File.class );
-
- assertNotNull( objCacheItem );
- assertNotNull( fileCacheItem );
-
- assertThat( ( (Object[]) getInternalState( objCacheItem, "fields" ) ).length, is( 0 ) );
- assertThat( ( (Object[]) getInternalState( fileCacheItem, "fields" ) ).length, is( 0 ) );
- }
-
- public void testNotInterpolateFile()
- throws Exception
- {
- Model model = new Model();
-
- File baseDir = new File( System.getProperty( "user.dir" ) );
-
- Properties p = new Properties();
-
- StringSearchModelInterpolator interpolator = (StringSearchModelInterpolator) createInterpolator();
-
- ModelBuildingRequest config = createModelBuildingRequest( p );
-
- SimpleProblemCollector collector = new SimpleProblemCollector();
- interpolator.interpolateObject( baseDir, model, new File( "." ), config, collector );
- assertProblemFree( collector );
-
- //noinspection unchecked
- Map<Class<?>, ?> cache =
- (Map<Class<?>, ?>) getField( StringSearchModelInterpolator.class, "CACHED_ENTRIES" )
- .get( null );
-
- Object fileCacheItem = cache.get( File.class );
-
- assertNotNull( fileCacheItem );
-
- assertThat( ( (Object[]) getInternalState( fileCacheItem, "fields" ) ).length, is( 0 ) );
- }
-
-
public void testConcurrentInterpolation()
throws Exception
{
--
2.21.0

1
ci.fmf Normal file
View File

@ -0,0 +1 @@
resultsdb-testcase: separate

10
gating.yaml Normal file
View File

@ -0,0 +1,10 @@
--- !Policy
product_versions:
- rhel-9
decision_contexts:
- osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/matrix/jdk21/full.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/matrix/jdk21/headless.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/matrix/unbound/jlink.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/javapackages.functional}

View File

@ -1,111 +1,101 @@
%global bundled_slf4j_version 1.7.28
%global homedir %{_datadir}/%{name}%{?maven_version_suffix}
%global confdir %{_sysconfdir}/%{name}%{?maven_version_suffix}
%bcond_with bootstrap
%global bundled_slf4j_version 1.7.36
%global homedir %{_datadir}/maven%{?maven_version_suffix}
%global confdir %{_sysconfdir}/maven%{?maven_version_suffix}
Name: maven
Epoch: 1
Version: 3.6.2
Release: 2%{?dist}
Version: 3.9.9
Release: 12%{?dist}
Summary: Java project management and project comprehension tool
# maven itself is ASL 2.0
# maven itself is Apache-2.0
# bundled slf4j is MIT
License: ASL 2.0 and MIT
URL: http://maven.apache.org/
License: Apache-2.0 AND MIT
URL: https://maven.apache.org/
BuildArch: noarch
ExclusiveArch: %{java_arches} noarch
Source0: http://archive.apache.org/dist/%{name}/%{name}-3/%{version}/sources/apache-%{name}-%{version}-src.tar.gz
Source0: https://archive.apache.org/dist/maven/maven-3/%{version}/source/apache-maven-%{version}-src.tar.gz
Source1: maven-bash-completion
Source2: mvn.1
Patch1: 0001-Adapt-mvn-script.patch
# Downstream-specific, avoids dependency on logback
# Used only when %%without logback is in effect
Patch2: 0002-Invoke-logback-via-reflection.patch
Patch3: 0003-Use-non-shaded-HTTP-wagon.patch
Patch4: 0004-Remove-dependency-on-powermock.patch
Patch: 0001-Adapt-mvn-script.patch
# Downstream-specific, avoids build-dependency on logback
Patch: 0002-Invoke-logback-via-reflection.patch
Patch: 0003-Remove-dependency-on-powermock.patch
%if %{with bootstrap}
BuildRequires: javapackages-bootstrap
%else
BuildRequires: maven-local
BuildRequires: %{?module_prefix}mvn(com.google.inject:guice::no_aop:)
BuildRequires: %{?module_prefix}mvn(commons-cli:commons-cli)
BuildRequires: mvn(com.google.guava:failureaccess)
BuildRequires: mvn(com.google.guava:guava)
BuildRequires: mvn(com.google.inject:guice)
BuildRequires: mvn(commons-cli:commons-cli)
BuildRequires: mvn(commons-io:commons-io)
BuildRequires: mvn(commons-jxpath:commons-jxpath)
BuildRequires: %{?module_prefix}mvn(javax.annotation:jsr250-api)
BuildRequires: %{?module_prefix}mvn(javax.inject:javax.inject)
BuildRequires: mvn(javax.annotation:javax.annotation-api)
BuildRequires: mvn(javax.inject:javax.inject)
BuildRequires: mvn(junit:junit)
BuildRequires: %{?module_prefix}mvn(org.apache.commons:commons-lang3)
BuildRequires: mvn(org.apache.maven:maven-parent:pom:)
BuildRequires: mvn(org.apache.maven.plugins:maven-assembly-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-dependency-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-enforcer-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-failsafe-plugin)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.resolver:maven-resolver-api)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.resolver:maven-resolver-connector-basic)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.resolver:maven-resolver-impl)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.resolver:maven-resolver-spi)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.resolver:maven-resolver-transport-wagon)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.resolver:maven-resolver-util)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.shared:maven-shared-utils)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.wagon:wagon-file)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.wagon:wagon-http)
BuildRequires: %{?module_prefix}mvn(org.apache.maven.wagon:wagon-provider-api)
BuildRequires: mvn(org.codehaus.modello:modello-maven-plugin) >= 1.10.0
BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-api)
BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-connector-basic)
BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-impl)
BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-spi)
BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-transport-file)
BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-transport-http)
BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-transport-wagon)
BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-util)
BuildRequires: mvn(org.apache.maven.shared:maven-shared-utils)
BuildRequires: mvn(org.apache.maven.wagon:wagon-file)
BuildRequires: mvn(org.apache.maven.wagon:wagon-http)
BuildRequires: mvn(org.apache.maven.wagon:wagon-provider-api)
BuildRequires: mvn(org.apache.maven:maven-parent:pom:)
BuildRequires: mvn(org.codehaus.modello:modello-maven-plugin)
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
BuildRequires: %{?module_prefix}mvn(org.codehaus.plexus:plexus-classworlds)
BuildRequires: %{?module_prefix}mvn(org.codehaus.plexus:plexus-component-annotations)
BuildRequires: mvn(org.codehaus.plexus:plexus-cipher)
BuildRequires: mvn(org.codehaus.plexus:plexus-classworlds)
BuildRequires: mvn(org.codehaus.plexus:plexus-component-annotations)
BuildRequires: mvn(org.codehaus.plexus:plexus-component-metadata)
BuildRequires: %{?module_prefix}mvn(org.codehaus.plexus:plexus-interpolation)
BuildRequires: %{?module_prefix}mvn(org.codehaus.plexus:plexus-utils) >= 3.2.0
BuildRequires: %{?module_prefix}mvn(org.eclipse.sisu:org.eclipse.sisu.inject)
BuildRequires: %{?module_prefix}mvn(org.eclipse.sisu:org.eclipse.sisu.plexus)
BuildRequires: mvn(org.codehaus.plexus:plexus-interpolation)
BuildRequires: mvn(org.codehaus.plexus:plexus-sec-dispatcher)
BuildRequires: mvn(org.codehaus.plexus:plexus-utils)
BuildRequires: mvn(org.eclipse.sisu:org.eclipse.sisu.inject)
BuildRequires: mvn(org.eclipse.sisu:org.eclipse.sisu.plexus)
BuildRequires: mvn(org.eclipse.sisu:sisu-maven-plugin)
BuildRequires: %{?module_prefix}mvn(org.fusesource.jansi:jansi)
BuildRequires: mvn(org.mockito:mockito-core) >= 2
BuildRequires: %{?module_prefix}mvn(org.slf4j:jcl-over-slf4j)
BuildRequires: %{?module_prefix}mvn(org.slf4j:slf4j-api)
BuildRequires: %{?module_prefix}mvn(org.slf4j:slf4j-simple)
BuildRequires: %{?module_prefix}mvn(org.sonatype.plexus:plexus-cipher)
BuildRequires: %{?module_prefix}mvn(org.sonatype.plexus:plexus-sec-dispatcher)
BuildRequires: mvn(org.fusesource.jansi:jansi)
BuildRequires: mvn(org.hamcrest:hamcrest)
BuildRequires: mvn(org.mockito:mockito-core)
BuildRequires: mvn(org.slf4j:jcl-over-slf4j)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildRequires: mvn(org.slf4j:slf4j-simple)
BuildRequires: mvn(org.xmlunit:xmlunit-core)
BuildRequires: mvn(org.xmlunit:xmlunit-matchers)
BuildRequires: slf4j-sources = %{bundled_slf4j_version}
%if 0%{?module_prefix:1}
%package -n %{module_prefix}%{name}
Summary: %{summary}
%endif
Requires: %{?module_prefix}%{name}-lib = %{epoch}:%{version}-%{release}
%if 0%{?fedora}
Requires(post): (alternatives if fedora-release >= 30 else chkconfig)
Requires(postun): (alternatives if fedora-release >= 30 else chkconfig)
%else
Requires(post): chkconfig
Requires(postun): chkconfig
# XXX
#BuildRequires: mvn(org.slf4j:slf4j-simple::sources:) = %{bundled_slf4j_version}
%if %{without bootstrap}
BuildRequires: mvn(org.slf4j:slf4j-simple::sources:)
%endif
# Require full javapackages-tools since maven-script uses
# /usr/share/java-utils/java-functions
Requires: javapackages-tools
Requires: %{name}-lib = %{epoch}:%{version}-%{release}
Requires: %{name}-jdk-binding
Suggests: %{name}-openjdk21 = %{epoch}:%{version}-%{release}
# Theoretically Maven might be usable with just JRE, but typical Maven
# workflow requires full JDK, so we recommend it here.
%if 0%{?fedora} || 0%{?rhel} > 7
Recommends: java-devel
%else
Requires: java-devel
%endif
%if 0%{?module_prefix:1}
%description -n %{module_prefix}%{name}
%{summary}.
%endif
Requires(post): alternatives
Requires(postun): alternatives
%description
Maven is a software project management and comprehension tool. Based on the
concept of a project object model (POM), Maven can manage a project's build,
reporting and documentation from a central piece of information.
%package -n %{?module_prefix}%{name}-lib
%package lib
Summary: Core part of Maven
# If XMvn is part of the same RPM transaction then it should be
# installed first to avoid triggering rhbz#1014355.
@ -117,24 +107,105 @@ OrderWithRequires: xmvn-minimal
# maven-slf4j-provider.jar, together with Maven-specific additions.
Provides: bundled(slf4j) = %{bundled_slf4j_version}
%description -n %{?module_prefix}%{name}-lib
%description lib
Core part of Apache Maven that can be used as a library.
%{?javadoc_package}
%package javadoc
Summary: API documentation for %{name}
%description javadoc
API documentation for %{name}.
%if !0%{?specpartsdir:1}
%package openjdk8
Summary: OpenJDK 8 binding for Maven
Provides: maven-jdk-binding = %{epoch}:%{version}-%{release}
Requires: java-1.8.0-openjdk-headless
Recommends: java-1.8.0-openjdk-devel
Requires: javapackages-tools >= 6.4.0
Requires(meta): maven = %{epoch}:%{version}-%{release}
%description openjdk8
Configures Maven to run with OpenJDK 8.
%files openjdk8
%ghost %{_jpbindingdir}/maven.conf
%dir %{_jpbindingdir}/maven.conf.d
%{_jpbindingdir}/maven.conf.d/openjdk8
%package openjdk11
Summary: OpenJDK 11 binding for Maven
Provides: maven-jdk-binding = %{epoch}:%{version}-%{release}
Requires: java-11-openjdk-headless
Recommends: java-11-openjdk-devel
Requires: javapackages-tools >= 6.4.0
Requires(meta): maven = %{epoch}:%{version}-%{release}
%description openjdk11
Configures Maven to run with OpenJDK 11.
%files openjdk11
%ghost %{_jpbindingdir}/maven.conf
%dir %{_jpbindingdir}/maven.conf.d
%{_jpbindingdir}/maven.conf.d/openjdk11
%package openjdk17
Summary: OpenJDK 17 binding for Maven
Provides: maven-jdk-binding = %{epoch}:%{version}-%{release}
Requires: java-17-openjdk-headless
Recommends: java-17-openjdk-devel
Requires: javapackages-tools >= 6.4.0
Requires(meta): maven = %{epoch}:%{version}-%{release}
%description openjdk17
Configures Maven to run with OpenJDK 17.
%files openjdk17
%ghost %{_jpbindingdir}/maven.conf
%dir %{_jpbindingdir}/maven.conf.d
%{_jpbindingdir}/maven.conf.d/openjdk17
%package openjdk21
Summary: OpenJDK 21 binding for Maven
Provides: maven-jdk-binding = %{epoch}:%{version}-%{release}
Requires: java-21-openjdk-headless
Recommends: java-21-openjdk-devel
Requires: javapackages-tools >= 6.4.0
Requires(meta): maven = %{epoch}:%{version}-%{release}
%description openjdk21
Configures Maven to run with OpenJDK 21.
%files openjdk21
%ghost %{_jpbindingdir}/maven.conf
%dir %{_jpbindingdir}/maven.conf.d
%{_jpbindingdir}/maven.conf.d/openjdk21
%package unbound
Summary: Unbound Maven binding
Provides: maven-jdk-binding = %{epoch}:%{version}-%{release}
Requires: javapackages-tools >= 6.4.0
Requires(meta): maven = %{epoch}:%{version}-%{release}
%description unbound
Configures Maven to run with Java discovered using JAVA_HOME and PATH
environment variables.
%files unbound
%ghost %{_jpbindingdir}/maven.conf
%dir %{_jpbindingdir}/maven.conf.d
%{_jpbindingdir}/maven.conf.d/unbound
%endif
%prep
%setup -q -n apache-%{name}-%{version}
%autosetup -p1 -n apache-%{name}-%{version}
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
find -name '*.java' -exec sed -i 's/\r//' {} +
find -name 'pom.xml' -exec sed -i 's/\r//' {} +
# TODO Delete after maven-3.6.3
# Fix Tycho pomless build
# https://issues.apache.org/jira/browse/MNG-6765
# https://github.com/apache/maven/commit/07ab962c85950b034be3216996900920c0204c3a
sed -i 's/@Named/@Named\( "core-default" \)/' maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelProcessor.java
sed -i "s/@{maven_version_suffix}/%{?maven_version_suffix}/" apache-maven/src/bin/mvn
# not really used during build, but a precaution
find -name '*.jar' -not -path '*/test/*' -delete
@ -164,16 +235,15 @@ sed -i "
%mvn_package :apache-maven __noinstall
%pom_add_dep javax.annotation:javax.annotation-api::provided maven-core
%pom_change_dep :jansi :::runtime maven-embedder
%pom_remove_dep -r :logback-classic
%mvn_alias :maven-resolver-provider :maven-aether-provider
%pom_xpath_inject 'pom:build/pom:plugins' '
<plugin>
<groupId>org.eclipse.sisu</groupId>
<artifactId>sisu-maven-plugin</artifactId>
</plugin>' maven-model-builder/pom.xml
%pom_remove_plugin :plexus-component-metadata maven-model-builder
%pom_add_plugin org.eclipse.sisu:sisu-maven-plugin maven-model-builder
%build
%mvn_build -- -Dproject.build.sourceEncoding=UTF-8
@ -194,10 +264,13 @@ install -d -m 755 %{buildroot}%{confdir}
install -d -m 755 %{buildroot}%{_datadir}/bash-completion/completions/
cp -a $M2_HOME/{bin,lib,boot} %{buildroot}%{homedir}/
%if !0%{?sclraw_phase}
xmvn-subst -R %{buildroot} -s %{buildroot}%{homedir}
%if %{without bootstrap}
xmvn-subst -s -R %{buildroot} -s %{buildroot}%{homedir}
%endif
# maven uses this hardcoded path in its launcher to locate jansi so we symlink it
ln -s %{_prefix}/lib/jansi/libjansi.so %{buildroot}%{homedir}/lib/jansi-native/
install -p -m 644 %{SOURCE2} %{buildroot}%{homedir}/bin/
gzip -9 %{buildroot}%{homedir}/bin/mvn.1
install -p -m 644 %{SOURCE1} %{buildroot}%{_datadir}/bash-completion/completions/mvn%{?maven_version_suffix}
@ -222,28 +295,46 @@ ln -s %{homedir}/bin/mvn.1.gz %{buildroot}%{_mandir}/man1/mvn%{maven_version_suf
ln -s %{homedir}/bin/mvnDebug.1.gz %{buildroot}%{_mandir}/man1/mvnDebug%{maven_version_suffix}.1.gz
%endif
# JDK bindings
%if !0%{?specpartsdir:1}
export RPM_SPECPARTS_DIR=/tmp
%endif
install -d -m 755 %{buildroot}%{_javaconfdir}/
ln -sf %{_jpbindingdir}/maven%{?maven_version_suffix}.conf %{buildroot}%{_javaconfdir}/maven%{?maven_version_suffix}.conf
echo JAVA_HOME=%{_jvmdir}/jre-1.8.0-openjdk >%{buildroot}%{_javaconfdir}/maven%{?maven_version_suffix}-openjdk8.conf
echo JAVA_HOME=%{_jvmdir}/jre-11-openjdk >%{buildroot}%{_javaconfdir}/maven%{?maven_version_suffix}-openjdk11.conf
echo JAVA_HOME=%{_jvmdir}/jre-17-openjdk >%{buildroot}%{_javaconfdir}/maven%{?maven_version_suffix}-openjdk17.conf
echo JAVA_HOME=%{_jvmdir}/jre-21-openjdk >%{buildroot}%{_javaconfdir}/maven%{?maven_version_suffix}-openjdk21.conf
%jp_binding --verbose --variant openjdk8 --ghost maven%{?maven_version_suffix}.conf --target %{_javaconfdir}/maven%{?maven_version_suffix}-openjdk8.conf --provides %{name}-jdk-binding --requires java-1.8.0-openjdk-headless --recommends java-1.8.0-openjdk-devel
%jp_binding --verbose --variant openjdk11 --ghost maven%{?maven_version_suffix}.conf --target %{_javaconfdir}/maven%{?maven_version_suffix}-openjdk11.conf --provides %{name}-jdk-binding --requires java-11-openjdk-headless --recommends java-11-openjdk-devel
%jp_binding --verbose --variant openjdk17 --ghost maven%{?maven_version_suffix}.conf --target %{_javaconfdir}/maven%{?maven_version_suffix}-openjdk17.conf --provides %{name}-jdk-binding --requires java-17-openjdk-headless --recommends java-17-openjdk-devel
%jp_binding --verbose --variant openjdk21 --ghost maven%{?maven_version_suffix}.conf --target %{_javaconfdir}/maven%{?maven_version_suffix}-openjdk21.conf --provides %{name}-jdk-binding --requires java-21-openjdk-headless --recommends java-21-openjdk-devel
touch %{buildroot}%{_javaconfdir}/maven%{?maven_version_suffix}-unbound.conf
%jp_binding --verbose --variant unbound --ghost maven%{?maven_version_suffix}.conf --target %{_javaconfdir}/maven%{?maven_version_suffix}-unbound.conf --provides %{name}-jdk-binding
%post -n %{?module_prefix}%{name}
%post
update-alternatives --install %{_bindir}/mvn mvn %{homedir}/bin/mvn %{?maven_alternatives_priority}0 \
--slave %{_bindir}/mvnDebug mvnDebug %{homedir}/bin/mvnDebug \
--slave %{_mandir}/man1/mvn.1.gz mvn1 %{homedir}/bin/mvn.1.gz \
--slave %{_mandir}/man1/mvnDebug.1.gz mvnDebug1 %{homedir}/bin/mvn.1.gz \
%postun -n %{?module_prefix}%{name}
[[ $1 -eq 0 ]] && update-alternatives --remove mvn %{homedir}/bin/mvn
%postun
if [[ $1 -eq 0 ]]; then update-alternatives --remove mvn %{homedir}/bin/mvn; fi
%files -n %{?module_prefix}%{name}-lib -f .mfiles
%files lib -f .mfiles
%doc README.md
%license LICENSE NOTICE
%{homedir}
%exclude %{homedir}/bin/mvn*
%dir %{confdir}
%dir %{confdir}/logging
%config %{_javaconfdir}/maven%{?maven_version_suffix}*.conf
%config(noreplace) %{_sysconfdir}/m2%{?maven_version_suffix}.conf
%config(noreplace) %{confdir}/settings.xml
%config(noreplace) %{confdir}/logging/simplelogger.properties
%files -n %{?module_prefix}%{name}
%files
%{homedir}/bin/mvn*
%ghost %{_bindir}/mvn
%ghost %{_bindir}/mvnDebug
%{_datadir}/bash-completion
@ -256,14 +347,206 @@ update-alternatives --install %{_bindir}/mvn mvn %{homedir}/bin/mvn %{?maven_alt
%{_mandir}/man1/mvnDebug%{maven_version_suffix}.1.gz
%endif
%files javadoc -f .mfiles-javadoc
%license LICENSE NOTICE
%changelog
* Mon Dec 02 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-12
- Reuse jlink image if it already exists
* Mon Dec 02 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-11
- Require /plans/matrix/unbound/jlink for gating
* Fri Nov 29 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-10
- Update javapackages test plan to f42
* Mon Nov 25 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-9
- Add test plan for maven-unbound
* Mon Nov 25 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-8
- Exclude maven-unbound from openjdk21 tests
* Fri Nov 22 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-6
- Generate bindings with %%jp_binding macro
* Wed Oct 30 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-4
- Expect JVMs in %%_jvmdir instead of %%_jvmlibdir
* Wed Sep 25 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-3
- Update gating.yaml
* Wed Sep 25 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-2
- Drop bindings for OpenJDK < 21
* Fri Aug 23 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.9-1
- Update to upstream version 3.9.9
* Tue Aug 20 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.6-8
- Rebuild for Sisu 0.9.0.M3
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.9.6-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Mar 05 2024 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.6-6
- Rebuild
* Fri Feb 23 2024 Jiri Vanek <jvanek@redhat.com> - 1:3.9.6-5
- bump of release for for java-21-openjdk as system jdk
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.9.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.9.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Dec 13 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.6-2
- Make JDK bindings work with different Maven version suffixes
* Mon Dec 04 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.6-1
- Update to upstream version 3.9.6
* Thu Sep 21 2023 Trung <8@tle.id.au> - 1:3.9.4-3
- Add maven-openjdk21
* Fri Sep 01 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.4-2
- Convert License tag to SPDX format
* Fri Aug 18 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.4-1
- Update to upstream version 3.9.4
* Tue Aug 15 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.1-4
- Build with default JDK 17
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.9.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Mar 31 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.1-2
- Rebuild with no changes
* Tue Mar 21 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.9.1-1
- Update to upstream version 3.9.1
* Fri Jan 27 2023 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.8.6-4
- Turn hard dependency on java-devel into a weak dependencny
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.8.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Sep 13 2022 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.8.6-2
- Add workaround for guava symlink creation with xmvn-subst
* Tue Sep 06 2022 Marian Koncek <mkoncek@redhat.com> - 1:3.8.6-1
- Update to upstream version 3.8.6
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.8.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu May 05 2022 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.8.5-2
- Add build-dependency on extra-enforcer-rules
* Thu Apr 21 2022 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.8.5-1
- Update to upstream version 3.8.5
* Thu Jan 27 2022 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.8.4-3
- Suggest OpenJDK 17 as default Maven binding
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.8.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Dec 17 2021 Marian Koncek <mkoncek@redhat.com> - 1:3.8.4-1
- Update to upstream version 3.8.4
* Fri Nov 05 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.3-14
- Do not override JAVA_HOME set by user
- Resolves: rhbz#2020478
* Tue Nov 02 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.3-13
- Suggest OpenJDK 17 as default Maven binding
* Fri Sep 24 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.3-12
- Add OpenJDK 17 binding
* Fri Sep 24 2021 Marian Koncek <mkoncek@redhat.com> - 1:3.6.3-11
- Create a symlink to jansi shared object
- Related: rhbz#1994935
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.6.3-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon May 17 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.3-9
- Bootstrap build
- Non-bootstrap build
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.6.3-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Thu Dec 24 2020 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.3-2
- Move launcher scripts from maven-lib to maven package
* Mon Dec 14 2020 Jerry James <loganjerry@gmail.com> - 1:3.6.3-7
- Update jansi dep to jansi1
* Wed Sep 30 2020 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1:3.6.3-6
- Remove unneeded commons-logging from runtime class path (rhbz#1883751)
- Also remove redundant commons-codec
* Tue Aug 25 2020 Fabio Valentini <decathorpe@gmail.com> - 1:3.6.3-5
- Adapt to cdi-api switch from jboss-interceptor to jakarta-interceptor.
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.6.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jul 10 2020 Jiri Vanek <jvanek@redhat.com> - 1:3.6.3-3
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
* Thu Jun 25 2020 Alexander Kurtakov <akurtako@redhat.com> 1:3.6.3-2
- Switch jsr250 to jakarta-anntations.
* Mon May 25 2020 Fabio Valentini <decathorpe@gmail.com> - 1:3.6.3-1
- Update to version 3.6.3.
* Thu May 14 2020 Fabio Valentini <decathorpe@gmail.com> - 1:3.6.2-1
- Update to version 3.6.2.
* Thu May 14 2020 Fabio Valentini <decathorpe@gmail.com> - 1:3.6.1-6
- Port to modello 1.11.
* Thu Feb 27 2020 Marian Koncek <mkoncek@redhat.com> - 1:3.6.3-1
- Update to upstream version 3.6.3
* Wed Feb 05 2020 Dinesh Prasanth M K <dmoluguw@redhat.com> - 1:3.6.1-5
- Require the updated version of slf4j.
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.6.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Jan 25 2020 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.2-4
- Build with OpenJDK 8
* Thu Jan 23 2020 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.2-3
- Implement JDK bindings
* Thu Nov 21 2019 Fabio Valentini <decathorpe@gmail.com> - 1:3.6.1-3
- Require the correct version of guava.
* Tue Nov 05 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.2-2
- Mass rebuild for javapackages-tools 201902
* Mon Nov 04 2019 Fabio Valentini <decathorpe@gmail.com> - 1:3.6.1-2
- Fix postun scriptlet.
* Wed Oct 16 2019 Fabio Valentini <decathorpe@gmail.com> - 1:3.6.1-1
- Update to version 3.6.1.
* Thu Oct 03 2019 Marian Koncek <mkoncek@redhat.com> - 1:3.6.2-1
- Update to upstream version 3.6.2
* Thu Aug 29 2019 Fabio Valentini <decathorpe@gmail.com> - 1:3.5.4-12
- Remove dependency on logback-classic.
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.5.4-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Wed Jul 03 2019 Marian Koncek <mkoncek@redhat.com> - 1:3.6.1-5
- Port to modello version 1.11
@ -273,6 +556,9 @@ update-alternatives --install %{_bindir}/mvn mvn %{homedir}/bin/mvn %{?maven_alt
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.1-3
- Mass rebuild for javapackages-tools 201901
* Wed Apr 17 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.5.4-10
- Update to Mockito 2
* Wed Apr 17 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.6.1-2
- Update to Mockito 2
@ -282,6 +568,18 @@ update-alternatives --install %{_bindir}/mvn mvn %{homedir}/bin/mvn %{?maven_alt
* Fri Apr 12 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.5.4-6
- Update SLF4J version to 1.7.26
* Wed Mar 20 2019 Peter Robinson <pbrobinson@fedoraproject.org> 1:3.5.4-9
- Fix dependency on alternatives
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.5.4-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Oct 22 2018 Mikolaj Izdebski <mizdebsk@redhat.com> - 1:3.5.4-7
- Revert unwanted dependency change
* Mon Oct 22 2018 Peter Robinson <pbrobinson@fedoraproject.org> 1:3.5.4-6
- Specify alternatives as dep, not chkconfig
* Mon Jul 30 2018 Severin Gehwolf <sgehwolf@redhat.com> - 1:3.5.4-2
- Require javapackages-tools for maven-lib.

View File

@ -1,4 +1,4 @@
.TH MVN "1" "April 2015" "Apache Maven 3.3.1" "User Commands"
.TH MVN "1" "March 2023" "Apache Maven 3.9.1" "User Commands"
.SH NAME
mvn \- software project management and comprehension tool
.SH DESCRIPTION
@ -18,7 +18,7 @@ projects on the list
.TP
\fB\-B\fR,\-\-batch\-mode
Run in non\-interactive (batch)
mode
mode (disables output color)
.TP
\fB\-b\fR,\-\-builder <arg>
The id of the build strategy to
@ -31,12 +31,17 @@ match
\fB\-c\fR,\-\-lax\-checksums
Warn if checksums don't match
.TP
\fB\-\-color
Defines the color mode of the
output. Supported are \'auto\',
\'always\', \'never\'.
.TP
\fB\-cpu\fR,\-\-check\-plugin\-updates
Ineffective, only kept for
backward compatibility
.TP
\fB\-D\fR,\-\-define <arg>
Define a system property
Define a user property
.TP
\fB\-e\fR,\-\-errors
Produce execution error messages
@ -49,7 +54,7 @@ Encrypt server password
.TP
\fB\-f\fR,\-\-file <arg>
Force the use of an alternate POM
file (or directory with pom.xml).
file (or directory with pom.xml)
.TP
\fB\-fae\fR,\-\-fail\-at\-end
Only fail the build afterwards;
@ -76,15 +81,12 @@ toolchains file
Display help information
.TP
\fB\-l\fR,\-\-log\-file <arg>
Log file to where all build output
will go.
Log file where all build output
will go (disables output color)
.TP
\fB\-llr\fR,\-\-legacy\-local\-repository
Use Maven 2 Legacy Local
Repository behaviour, ie no use of
_remote.repositories. Can also be
activated by using
\fB\-Dmaven\fR.legacyLocalRepo=true
UNSUPPORTED: Use of this option
will make Maven invocation fail.
.TP
\fB\-N\fR,\-\-non\-recursive
Do not recurse into sub\-projects
@ -100,6 +102,10 @@ backward compatibility
\fB\-nsu\fR,\-\-no\-snapshot\-updates
Suppress SNAPSHOT updates
.TP
\fB\-ntp\fR,\-\-no\-transfer\-progress
Do not display transfer progress
when downloading or uploading
.TP
\fB\-o\fR,\-\-offline
Work offline
.TP
@ -112,7 +118,7 @@ Comma\-delimited list of specified
reactor projects to build instead
of all projects. A project can be
specified by [groupId]:artifactId
or by its relative path.
or by its relative path
.TP
\fB\-q\fR,\-\-quiet
Quiet output \- only show errors
@ -125,14 +131,15 @@ project
Alternate path for the user
settings file
.TP
\fB\-T\fR,\-\-threads <arg>
Thread count, for instance 2.0C
where C is core multiplied
.TP
\fB\-t\fR,\-\-toolchains <arg>
Alternate path for the user
toolchains file
.TP
\fB\-T\fR,\-\-threads <arg>
Thread count, for instance 4 (int)
or 2C/2.5C (int/float) where C is
core multiplied
.TP
\fB\-U\fR,\-\-update\-snapshots
Forces a check for missing
releases and updated snapshots on
@ -142,12 +149,12 @@ remote repositories
Ineffective, only kept for
backward compatibility
.TP
\fB\-v\fR,\-\-version
Display version information
.TP
\fB\-V\fR,\-\-show\-version
Display version information
WITHOUT stopping build
.TP
\fB\-v\fR,\-\-version
Display version information
.TP
\fB\-X\fR,\-\-debug
Produce execution debug output

7
plans/javapackages.fmf Normal file
View File

@ -0,0 +1,7 @@
summary: Run javapackages-specific tests
discover:
how: fmf
url: https://src.fedoraproject.org/tests/javapackages
ref: c9s
execute:
how: tmt

52
plans/matrix.fmf Normal file
View File

@ -0,0 +1,52 @@
discover:
how: fmf
url: https://src.fedoraproject.org/tests/maven
execute:
how: tmt
environment:
MAVEN_IT_GIT_REF: maven-3.9.x
/jdk21:
environment+:
OPENJDK_VERSION: 21
prepare:
- how: install
exclude:
- maven-unbound
/full:
summary: Maven matrix tests - OpenJDK 21 full
discover+:
filter: tag:jdk21 & tier:0,1
/headless:
summary: Maven matrix tests - OpenJDK 21 headless
discover+:
filter: tag:jre21 & tier:0,1
environment+:
OPENJDK_HEADLESS: "true"
prepare+:
- how: shell
script: |
dnf -y remove java-*-openjdk
/unbound:
prepare:
- how: install
exclude:
- maven-openjdk21
/jlink:
summary: Maven matrix tests - unbound jlink-based Java
discover+:
filter: tag:unbound & tier:0,1
prepare+:
- how: shell
script: |
test -d /opt/java && test -x /usr/local/bin/java && exit 0
dnf -y install java-21-openjdk-jmods
jlink --add-modules java.base,java.logging,java.xml,java.naming --output /opt/java
ln -s /opt/java/bin/java /usr/local/bin/java
dnf -y remove java-21-openjdk-jmods

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (apache-maven-3.9.9-src.tar.gz) = 2f395661e7a48c454dd526f2800df209169a253e7980f6fbfbf5f63546fe726a45935f14b151a2737159c9574b5b0f223ea8cd0f62232dd47b47a6863df790d5