Sync from SUSE:SLFO:Main maven-invoker revision bf065591882757caca5cb3cc07d1cbdf

This commit is contained in:
Adrian Schröter 2024-05-03 16:38:13 +02:00
commit d09d3eb860
6 changed files with 337 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

BIN
maven-invoker-3.1.0-source-release.zip (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,26 @@
From 97b2ceb3544c035459341278d45cef2e44c21c7b Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Wed, 13 Mar 2013 13:36:26 +0100
Subject: [PATCH 2/2] Fix MSHARED-279
See: http://jira.codehaus.org/browse/MSHARED-279
---
.../java/org/apache/maven/shared/invoker/MavenCommandLineBuilder.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/org/apache/maven/shared/invoker/MavenCommandLineBuilder.java b/src/main/java/org/apache/maven/shared/invoker/MavenCommandLineBuilder.java
index 35ab16b..082c988 100644
--- a/src/main/java/org/apache/maven/shared/invoker/MavenCommandLineBuilder.java
+++ b/src/main/java/org/apache/maven/shared/invoker/MavenCommandLineBuilder.java
@@ -536,7 +536,7 @@ public class MavenCommandLineBuilder
if ( mavenHome == null )
{
String mavenHomeProperty = System.getProperty( "maven.home" );
- if ( mavenHomeProperty != null )
+ if ( StringUtils.isNotEmpty( mavenHomeProperty ) )
{
mavenHome = new File( mavenHomeProperty );
if ( !mavenHome.isDirectory() )
--
1.8.1.4

151
maven-invoker-build.xml Normal file
View File

@ -0,0 +1,151 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="maven-invoker" default="package" basedir=".">
<!-- ====================================================================== -->
<!-- Build environment properties -->
<!-- ====================================================================== -->
<property file="build.properties"/>
<property name="project.groupId" value="org.apache.maven.shared"/>
<property name="project.artifactId" value="maven-invoker"/>
<property name="project.version" value="3.1.0"/>
<property name="project.name" value="Apache Maven Invoker"/>
<property name="project.organization.name" value="The Apache Software Foundation"/>
<property name="compiler.source" value="1.8"/>
<property name="compiler.target" value="${compiler.source}"/>
<property name="build.finalName" value="${project.artifactId}-${project.version}"/>
<property name="build.dir" value="target"/>
<property name="build.outputDir" value="${build.dir}/classes"/>
<property name="build.srcDir" value="src/main/java"/>
<property name="build.resourceDir" value="src/main/resources"/>
<property name="reporting.outputDirectory" value="${build.dir}/site"/>
<!-- ====================================================================== -->
<!-- Defining classpaths -->
<!-- ====================================================================== -->
<path id="build.classpath">
<fileset dir="lib">
<include name="**/*.jar"/>
</fileset>
</path>
<!-- ====================================================================== -->
<!-- Cleaning up target -->
<!-- ====================================================================== -->
<target name="clean" description="Clean the output directory">
<delete dir="${build.dir}"/>
</target>
<!-- ====================================================================== -->
<!-- Compilation target -->
<!-- ====================================================================== -->
<target name="compile" description="Compile the code">
<mkdir dir="${build.outputDir}"/>
<javac destdir="${build.outputDir}"
nowarn="false"
debug="true"
optimize="false"
deprecation="true"
target="${compiler.target}"
verbose="false"
fork="false"
source="${compiler.source}">
<src>
<pathelement location="${build.srcDir}"/>
</src>
<classpath refid="build.classpath"/>
</javac>
</target>
<!-- ====================================================================== -->
<!-- Sisu javax.inject.Named generation target -->
<!-- ====================================================================== -->
<target name="sisu"
depends="compile"
description="Generate javax.inject.Name index">
<sequential>
<java classname="org.eclipse.sisu.space.SisuIndex"
failonerror="true"
fork="true">
<classpath>
<path refid="build.classpath"/>
</classpath>
<arg value="${build.outputDir}"/>
</java>
<move todir="${build.outputDir}/META-INF">
<fileset dir="META-INF"/>
</move>
</sequential>
</target>
<!-- ====================================================================== -->
<!-- Javadoc target -->
<!-- ====================================================================== -->
<target name="javadoc" description="Generates the Javadoc of the application">
<javadoc sourcepath="${build.srcDir}"
packagenames="*"
destdir="${reporting.outputDirectory}/apidocs"
access="protected"
source="${compiler.source}"
verbose="false"
version="true"
use="true"
author="true"
splitindex="false"
nodeprecated="false"
nodeprecatedlist="false"
notree="false"
noindex="false"
nohelp="false"
nonavbar="false"
serialwarn="false"
charset="ISO-8859-1"
linksource="false"
breakiterator="false">
<classpath refid="build.classpath"/>
</javadoc>
</target>
<!-- ====================================================================== -->
<!-- Package target -->
<!-- ====================================================================== -->
<target name="package" depends="sisu" description="Package the application">
<jar jarfile="${build.dir}/${build.finalName}.jar"
compress="true"
index="false"
basedir="${build.outputDir}"
excludes="**/package.html">
<manifest>
<attribute name="Implementation-Title" value="${project.name}"/>
<attribute name="Implementation-URL" value="http://maven.apache.org/shared/${project.artifactId}/"/>
<attribute name="Implementation-Vendor" value="${project.organization.name}"/>
<attribute name="Implementation-Vendor-Id" value="${project.groupId}"/>
<attribute name="Implementation-Version" value="${project.version}"/>
<attribute name="JavaPackages-ArtifactId" value="${project.artifactId}"/>
<attribute name="JavaPackages-GroupId" value="${project.groupId}"/>
<attribute name="JavaPackages-Version" value="${project.version}"/>
<attribute name="Specification-Title" value="${project.name}"/>
<attribute name="Specification-Vendor" value="${project.organization.name}"/>
<attribute name="Specification-Version" value="${project.version}"/>
</manifest>
</jar>
</target>
<!-- ====================================================================== -->
<!-- A dummy target for the package named after the type it creates -->
<!-- ====================================================================== -->
<target name="jar" depends="package" description="Builds the jar for the application"/>
</project>

40
maven-invoker.changes Normal file
View File

@ -0,0 +1,40 @@
-------------------------------------------------------------------
Mon Apr 25 18:38:03 UTC 2022 - Fridrich Strba <fstrba@suse.com>
- Upgrade to upstream version 3.1.0
* Improvement:
+ MSHARED-702 Remove hard coded versions for
plexus-component-annotations/plexus-component-metadata
* Tasks:
+ MSHARED-625 Refactored to use maven-shared-utils instead
of 'plexus-utils'.
+ MSHARED-729 Upgrade to JDK 7 minimum.
* Dependency upgrades:
+ MSHARED-700 Upgrade parent to 31
+ MSHARED-728 Upgrade maven-shared-utils to 3.2.1
* Fixes build with maven-shared-utils 3.3.3
-------------------------------------------------------------------
Sun Mar 20 19:33:22 UTC 2022 - Fridrich Strba <fstrba@suse.com>
- Build with java source and target levels 8
-------------------------------------------------------------------
Thu Nov 21 14:17:41 UTC 2019 - Fridrich Strba <fstrba@suse.com>
- Upgrade to upstream version 3.0.1
* needed by xmvn-tools >= 3.1.0
- Modified patch:
* maven-invoker-MSHARED-279.patch
+ rediff to changed context
-------------------------------------------------------------------
Mon Apr 1 23:01:37 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Use noun phrase in summary.
-------------------------------------------------------------------
Thu Mar 14 08:05:46 UTC 2019 - Fridrich Strba <fstrba@suse.com>
- Initial packaging of maven-invoker 2.2
- Generate and customize ant build.xml file

94
maven-invoker.spec Normal file
View File

@ -0,0 +1,94 @@
#
# spec file for package maven-invoker
#
# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: maven-invoker
Version: 3.1.0
Release: 0
Summary: An API for firing a maven build in a clean environment
License: Apache-2.0
Group: Development/Libraries/Java
URL: https://maven.apache.org/shared/maven-invoker/
Source0: https://repo1.maven.org/maven2/org/apache/maven/shared/%{name}/%{version}/%{name}-%{version}-source-release.zip
Source1: %{name}-build.xml
# Patch rejected upstream
Patch1: %{name}-MSHARED-279.patch
BuildRequires: ant
BuildRequires: atinject
BuildRequires: fdupes
BuildRequires: javapackages-local
BuildRequires: maven-shared-utils >= 3.3.3
BuildRequires: sisu-inject
BuildRequires: unzip
Requires: mvn(org.apache.maven.shared:maven-shared-utils)
Requires: mvn(org.eclipse.sisu:org.eclipse.sisu.inject)
BuildArch: noarch
%description
This API is concerned with firing a Maven build in a new JVM. It accomplishes
its task by building up a conventional Maven command line from options given in
the current request, along with those global options specified in the invoker
itself. Once it has the command line, the invoker will execute it, and capture
the resulting exit code or any exception thrown to signal a failure to execute.
Input/output control can be specified using an InputStream and up to two
InvocationOutputHandlers.
This is a replacement package for maven-shared-invoker
%package javadoc
Summary: Javadoc for %{name}
Group: Documentation/HTML
%description javadoc
API documentation for %{name}.
%prep
%setup -q
sed -i 's/\r$//' src/main/java/org/apache/maven/shared/invoker/MavenCommandLineBuilder.java
cp %{SOURCE1} build.xml
%patch1 -p1
%pom_change_dep javax.inject:javax.inject:1 org.eclipse.sisu:org.eclipse.sisu.inject
%pom_remove_parent .
%pom_xpath_inject pom:project "<groupId>org.apache.maven.shared</groupId>" .
%build
mkdir -p lib
build-jar-repository -s lib maven-shared-utils org.eclipse.sisu.inject atinject
%{ant} jar javadoc
%install
# jar
install -dm 0755 %{buildroot}%{_javadir}/%{name}
install -pm 0644 target/%{name}-%{version}.jar %{buildroot}%{_javadir}/%{name}/%{name}.jar
# pom
install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
install -pm 0644 pom.xml %{buildroot}%{_mavenpomdir}/%{name}/%{name}.pom
%add_maven_depmap %{name}/%{name}.pom %{name}/%{name}.jar
# javadoc
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}/
%fdupes -s %{buildroot}%{_javadocdir}
%files -f .mfiles
%license LICENSE NOTICE
%files javadoc
%license LICENSE NOTICE
%{_javadocdir}/%{name}
%changelog