This commit is contained in:
commit
e73dc72dfb
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal 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
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
3
maven-invoker-2.2-source-release.zip
Normal file
3
maven-invoker-2.2-source-release.zip
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f79d7c6f68a0b18c4f22972de340809ab73a127e4ce77fee041520e15afa46e6
|
||||
size 77611
|
26
maven-invoker-MSHARED-279.patch
Normal file
26
maven-invoker-MSHARED-279.patch
Normal 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
|
||||
|
255
maven-invoker-build.xml
Normal file
255
maven-invoker-build.xml
Normal file
@ -0,0 +1,255 @@
|
||||
<?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="2.2"/>
|
||||
<property name="project.name" value="Apache Maven Invoker"/>
|
||||
<property name="project.organization.name" value="The Apache Software Foundation"/>
|
||||
|
||||
<property name="compiler.source" value="1.6"/>
|
||||
<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="build.testOutputDir" value="${build.dir}/test-classes"/>
|
||||
<property name="build.testDir" value="src/test/java"/>
|
||||
<property name="build.testResourceDir" value="src/test/resources"/>
|
||||
<property name="test.reports" value="${build.dir}/test-reports"/>
|
||||
<property name="reporting.outputDirectory" value="${build.dir}/site"/>
|
||||
|
||||
<!-- ====================================================================== -->
|
||||
<!-- Defining classpaths -->
|
||||
<!-- ====================================================================== -->
|
||||
|
||||
<path id="build.classpath">
|
||||
<fileset dir="lib">
|
||||
<!-- plexus-utils-3.0.20 plexus-component-annotations-1.6 -->
|
||||
<include name="**/*.jar"/>
|
||||
</fileset>
|
||||
</path>
|
||||
<path id="build.test.classpath">
|
||||
<fileset dir="lib">
|
||||
<!-- plexus-utils-3.0.20 plexus-component-annotations-1.6
|
||||
junit-4.11 hamcrest-core-1.3.jar -->
|
||||
<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>
|
||||
|
||||
<!-- ====================================================================== -->
|
||||
<!-- Target to generate Plexus component.xml -->
|
||||
<!-- ====================================================================== -->
|
||||
|
||||
<target name="gen-meta"
|
||||
depends="compile"
|
||||
description="Generate Plexus component.xml">
|
||||
<mkdir dir="${build.outputDir}/META-INF/plexus"/>
|
||||
<exec executable="plexus-metadata-generator" failonerror="true">
|
||||
<env key="CLASSPATH" value="${build.outputDir}"/>
|
||||
<arg value="-s"/>
|
||||
<arg value="${build.srcDir}"/>
|
||||
<arg value="-c"/>
|
||||
<arg value="${build.outputDir}"/>
|
||||
<arg value="-m"/>
|
||||
<arg value="${build.outputDir}/META-INF/plexus"/>
|
||||
<arg value="-o"/>
|
||||
<arg value="${build.outputDir}/META-INF/plexus/components.xml"/>
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
<!-- ====================================================================== -->
|
||||
<!-- Test-compilation target -->
|
||||
<!-- ====================================================================== -->
|
||||
|
||||
<target name="compile-tests"
|
||||
depends="gen-meta"
|
||||
description="Compile the test code"
|
||||
unless="test.skip">
|
||||
<mkdir dir="${build.testOutputDir}"/>
|
||||
<javac destdir="${build.testOutputDir}"
|
||||
nowarn="false"
|
||||
debug="true"
|
||||
optimize="false"
|
||||
deprecation="true"
|
||||
target="${compiler.target}"
|
||||
verbose="false"
|
||||
fork="false"
|
||||
source="${compiler.source}">
|
||||
<src>
|
||||
<pathelement location="${build.testDir}"/>
|
||||
</src>
|
||||
<classpath>
|
||||
<path refid="build.test.classpath"/>
|
||||
<pathelement location="${build.outputDir}"/>
|
||||
</classpath>
|
||||
</javac>
|
||||
<copy todir="${build.testOutputDir}">
|
||||
<fileset dir="${build.testResourceDir}"/>
|
||||
</copy>
|
||||
</target>
|
||||
|
||||
<!-- ====================================================================== -->
|
||||
<!-- Run all tests -->
|
||||
<!-- ====================================================================== -->
|
||||
|
||||
<target name="test"
|
||||
depends="compile-tests, junit-missing"
|
||||
unless="junit.skipped"
|
||||
description="Run the test cases">
|
||||
<mkdir dir="${test.reports}"/>
|
||||
<junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
|
||||
<sysproperty key="basedir" value="."/>
|
||||
<formatter type="xml"/>
|
||||
<formatter type="plain" usefile="false"/>
|
||||
<classpath>
|
||||
<path refid="build.test.classpath"/>
|
||||
<pathelement location="${build.outputDir}"/>
|
||||
<pathelement location="${build.testOutputDir}"/>
|
||||
</classpath>
|
||||
<batchtest todir="${test.reports}" unless="test">
|
||||
<fileset dir="${build.testDir}">
|
||||
<include name="**/Test*.java"/>
|
||||
<include name="**/*Test.java"/>
|
||||
<include name="**/*TestCase.java"/>
|
||||
<exclude name="test-build-should*/**"/>
|
||||
</fileset>
|
||||
</batchtest>
|
||||
<batchtest todir="${test.reports}" if="test">
|
||||
<fileset dir="${build.testDir}">
|
||||
<include name="**/${test}.java"/>
|
||||
<exclude name="test-build-should*/**"/>
|
||||
</fileset>
|
||||
</batchtest>
|
||||
</junit>
|
||||
</target>
|
||||
|
||||
<target name="test-junit-present">
|
||||
<available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
|
||||
</target>
|
||||
|
||||
<target name="test-junit-status"
|
||||
depends="test-junit-present">
|
||||
<condition property="junit.missing">
|
||||
<and>
|
||||
<isfalse value="${junit.present}"/>
|
||||
<isfalse value="${test.skip}"/>
|
||||
</and>
|
||||
</condition>
|
||||
<condition property="junit.skipped">
|
||||
<or>
|
||||
<isfalse value="${junit.present}"/>
|
||||
<istrue value="${test.skip}"/>
|
||||
</or>
|
||||
</condition>
|
||||
</target>
|
||||
|
||||
<target name="junit-missing"
|
||||
depends="test-junit-status"
|
||||
if="junit.missing">
|
||||
<echo>=================================== WARNING ===================================</echo>
|
||||
<echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
|
||||
<echo>===============================================================================</echo>
|
||||
</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="gen-meta,test" 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>
|
5
maven-invoker.changes
Normal file
5
maven-invoker.changes
Normal file
@ -0,0 +1,5 @@
|
||||
-------------------------------------------------------------------
|
||||
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
|
104
maven-invoker.spec
Normal file
104
maven-invoker.spec
Normal file
@ -0,0 +1,104 @@
|
||||
#
|
||||
# spec file for package maven-invoker
|
||||
#
|
||||
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# 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/
|
||||
#
|
||||
|
||||
|
||||
%bcond_with tests
|
||||
Name: maven-invoker
|
||||
Version: 2.2
|
||||
Release: 0
|
||||
Summary: Fires a maven build in a clean environment
|
||||
License: Apache-2.0
|
||||
Group: Development/Libraries/Java
|
||||
URL: http://maven.apache.org/shared/maven-invoker/
|
||||
Source0: http://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: fdupes
|
||||
BuildRequires: javapackages-local
|
||||
BuildRequires: plexus-containers-component-annotations
|
||||
BuildRequires: plexus-metadata-generator
|
||||
BuildRequires: plexus-utils
|
||||
BuildRequires: unzip
|
||||
Requires: mvn(org.codehaus.plexus:plexus-component-annotations)
|
||||
Requires: mvn(org.codehaus.plexus:plexus-utils)
|
||||
BuildArch: noarch
|
||||
%if %{with tests}
|
||||
BuildRequires: ant-junit
|
||||
BuildRequires: maven-local
|
||||
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
|
||||
BuildRequires: mvn(org.apache.maven.plugins:maven-clean-plugin)
|
||||
%endif
|
||||
|
||||
%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
|
||||
cp %{SOURCE1} build.xml
|
||||
%patch1 -p1
|
||||
|
||||
%build
|
||||
mkdir -p lib
|
||||
build-jar-repository -s lib plexus/utils plexus-containers/plexus-component-annotations
|
||||
%if %{with tests}
|
||||
export M2_HOME=%{_datadir}/xmvn
|
||||
%endif
|
||||
%{ant} \
|
||||
%if %{without tests}
|
||||
-Dtest.skip=true \
|
||||
%endif
|
||||
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
|
Loading…
Reference in New Issue
Block a user