[java-sig-commits] [plexus-runtime-builder] Versionless jars & javadocs

Stanislav Ochotnicky sochotni at fedoraproject.org
Mon Dec 20 10:20:14 UTC 2010


commit cdb8f5bdb61a769a474cb3779d0072b6c36f2307
Author: Stanislav Ochotnicky <sochotnicky at redhat.com>
Date:   Fri Dec 17 14:55:33 2010 +0100

    Versionless jars & javadocs
    
    - Add compatibility depmap plexus:plexus-runtime-builder
    - Drop gcj support
    - Update patch

 0001-Fix-ArtifactResolutionException.patch |   86 ++++++++++++++++++++
 plexus-runtime-builder-maven204.patch      |   64 ---------------
 plexus-runtime-builder.spec                |  119 ++++++++++------------------
 3 files changed, 128 insertions(+), 141 deletions(-)
---
diff --git a/0001-Fix-ArtifactResolutionException.patch b/0001-Fix-ArtifactResolutionException.patch
new file mode 100644
index 0000000..c6a2af9
--- /dev/null
+++ b/0001-Fix-ArtifactResolutionException.patch
@@ -0,0 +1,86 @@
+From cbf061b25b654e4759ed1876c4f793e34e207a67 Mon Sep 17 00:00:00 2001
+From: Stanislav Ochotnicky <sochotnicky at redhat.com>
+Date: Fri, 17 Dec 2010 14:47:39 +0100
+Subject: [PATCH] Fix ArtifactResolutionException
+
+---
+ .../codehaus/plexus/builder/AbstractBuilder.java   |   24 ++++++++++++++-----
+ .../builder/runtime/PlexusRuntimeBuilderTest.java  |   10 +++++++-
+ 2 files changed, 26 insertions(+), 8 deletions(-)
+
+diff --git a/src/main/java/org/codehaus/plexus/builder/AbstractBuilder.java b/src/main/java/org/codehaus/plexus/builder/AbstractBuilder.java
+index 71bda68..2404580 100644
+--- a/src/main/java/org/codehaus/plexus/builder/AbstractBuilder.java
++++ b/src/main/java/org/codehaus/plexus/builder/AbstractBuilder.java
+@@ -248,12 +248,18 @@ public abstract class AbstractBuilder
+ 
+         if ( resolveTransitively )
+         {
+-            result = artifactResolver.resolveTransitively( sourceArtifacts,
+-                                                           originatingArtifact,
+-                                                           localRepository,
+-                                                           remoteRepositories,
+-                                                           metadata,
+-                                                           artifactFilter );
++
++            try {
++                result = artifactResolver.resolveTransitively( sourceArtifacts,
++                                                               originatingArtifact,
++                                                               localRepository,
++                                                               remoteRepositories,
++                                                               metadata,
++                                                               artifactFilter );
++            } catch (org.apache.maven.artifact.resolver.ArtifactNotFoundException e) {
++                throw new ArtifactResolutionException(e.getOriginalMessage(), e.getGroupId(), e.getArtifactId(), e.getVersion(), e.getType(), e.getClassifier(), e);
++            }
++
+             // TODO: Assert that there wasn't any conflicts.
+ 
+             resolvedArtifacts = result.getArtifacts();
+@@ -266,7 +272,11 @@ public abstract class AbstractBuilder
+             {
+                 Artifact artifact = (Artifact) it.next();
+ 
+-                artifactResolver.resolve( artifact, remoteRepositories, localRepository );
++                try {
++                    artifactResolver.resolve( artifact, remoteRepositories, localRepository );
++                } catch (org.apache.maven.artifact.resolver.ArtifactNotFoundException e) {
++                    throw new ArtifactResolutionException(e.getOriginalMessage(), e.getGroupId(), e.getArtifactId(), e.getVersion(), e.getType(), e.getClassifier(), e);
++                }
+ 
+                 resolvedArtifacts.add( artifact );
+             }
+diff --git a/src/test/java/org/codehaus/plexus/builder/runtime/PlexusRuntimeBuilderTest.java b/src/test/java/org/codehaus/plexus/builder/runtime/PlexusRuntimeBuilderTest.java
+index cd24419..d2c75d5 100644
+--- a/src/test/java/org/codehaus/plexus/builder/runtime/PlexusRuntimeBuilderTest.java
++++ b/src/test/java/org/codehaus/plexus/builder/runtime/PlexusRuntimeBuilderTest.java
+@@ -28,6 +28,7 @@ import org.apache.maven.artifact.Artifact;
+ import org.apache.maven.artifact.factory.ArtifactFactory;
+ import org.apache.maven.artifact.repository.ArtifactRepository;
+ import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
++import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
+ import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
+ import org.codehaus.plexus.PlexusTestCase;
+ import org.codehaus.plexus.util.FileUtils;
+@@ -78,10 +79,17 @@ public class PlexusRuntimeBuilderTest
+ 
+         ArtifactRepositoryLayout repositoryLayout = (ArtifactRepositoryLayout) lookup( ArtifactRepositoryLayout.ROLE, "legacy" );
+ 
++		String updatePolicyFlag = ArtifactRepositoryPolicy.UPDATE_POLICY_ALWAYS;
++        String checksumPolicyFlag = ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN;
++        ArtifactRepositoryPolicy snapshotsPolicy = new ArtifactRepositoryPolicy( true, updatePolicyFlag, checksumPolicyFlag );
++        ArtifactRepositoryPolicy releasesPolicy = new ArtifactRepositoryPolicy( true, updatePolicyFlag, checksumPolicyFlag );
++
+         ArtifactRepository localRepository =
+             artifactRepositoryFactory.createArtifactRepository( "local",
+                                                                 "file://" + getTestFile( "src/test/repository" ).getAbsolutePath(),
+-                                                                repositoryLayout );
++                                                                repositoryLayout,
++																snapshotsPolicy,
++																releasesPolicy );
+ 
+         Set projectArtifacts = new HashSet();
+ 
+-- 
+1.7.3.3
+
diff --git a/plexus-runtime-builder.spec b/plexus-runtime-builder.spec
index 319da1c..369cf1b 100644
--- a/plexus-runtime-builder.spec
+++ b/plexus-runtime-builder.spec
@@ -28,45 +28,36 @@
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #
 
-%define _with_gcj_support 1
-%define gcj_support %{?_with_gcj_support:1}%{!?_with_gcj_support:
-  %{?_without_gcj_support:0}%{!?_without_gcj_support:%{?_gcj_support:
-  %{_gcj_support}}%{!?_gcj_support:0}}}
-
-%define parent plexus
-%define subname runtime-builder
+%global parent plexus
+%global subname runtime-builder
 
 Name:           %{parent}-%{subname}
 Version:        1.0
-Release:        0.4.a9.1.9%{?dist}
+Release:        0.5.a9%{?dist}
 Epoch:          0
 Summary:        Plexus Component Descriptor Creator
 License:        MIT
 Group:          Development/Java
 URL:            http://plexus.codehaus.org/
-Source0:        %{name}-src.tar.gz
 # svn export svn://svn.plexus.codehaus.org/plexus/tags/plexus-runtime-builder-1.0-alpha-9 plexus-runtime-builder/
 # tar czf plexus-runtime-builder-1.0-alpha-9.tar.gz plexus-runtime-builder/
-Patch0:            %{name}-maven204.patch
-
-BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+Source0:        %{name}-src.tar.gz
+Patch0:         0001-Fix-ArtifactResolutionException.patch
 
-%if ! %{gcj_support}
 BuildArch:      noarch
-%endif
 
 BuildRequires:  jpackage-utils >= 0:1.7.2
-BuildRequires:  jakarta-commons-codec
+BuildRequires:  apache-commons-codec
 BuildRequires:  jakarta-commons-httpclient
 BuildRequires:  maven2 >= 2.0.4
-BuildRequires:  maven2-plugin-compiler
-BuildRequires:  maven2-plugin-install
-BuildRequires:  maven2-plugin-jar
-BuildRequires:  maven2-plugin-javadoc
-BuildRequires:  maven2-plugin-release
-BuildRequires:  maven2-plugin-resources
-BuildRequires:  maven2-plugin-surefire
-BuildRequires:  maven2-common-poms >= 1.0
+BuildRequires:  maven-compiler-plugin
+BuildRequires:  maven-install-plugin
+BuildRequires:  maven-jar-plugin
+BuildRequires:  maven-javadoc-plugin
+BuildRequires:  maven-release-plugin
+BuildRequires:  maven-resources-plugin
+BuildRequires:  maven-surefire-plugin
+BuildRequires:  maven2-common-poms
 BuildRequires:  maven-wagon
 BuildRequires:  plexus-appserver
 BuildRequires:  plexus-archiver
@@ -74,14 +65,13 @@ BuildRequires:  plexus-container-default
 BuildRequires:  plexus-utils
 BuildRequires:  plexus-velocity
 BuildRequires:  plexus-xmlrpc
-BuildRequires:  tomcat5
-BuildRequires:  tomcat5-servlet-2.4-api
+BuildRequires:  tomcat6-servlet-2.5-api
 BuildRequires:  velocity
 BuildRequires:  xmlrpc
 
-Requires:       jakarta-commons-codec
+Requires:       apache-commons-codec
 Requires:       jakarta-commons-httpclient
-Requires:       maven2-common-poms >= 1.0
+Requires:       maven2-common-poms
 Requires:       maven-wagon
 Requires:       plexus-appserver
 Requires:       plexus-archiver
@@ -95,11 +85,6 @@ Requires:       xmlrpc
 Requires(post):    jpackage-utils >= 0:1.7.2
 Requires(postun):  jpackage-utils >= 0:1.7.2
 
-%if %{gcj_support}
-BuildRequires:       java-gcj-compat-devel
-Requires(post):      java-gcj-compat
-Requires(postun):    java-gcj-compat
-%endif
 
 %description
 The Plexus project seeks to create end-to-end developer tools for
@@ -112,6 +97,7 @@ is like a J2EE application server, without all the baggage.
 %package javadoc
 Summary:        Javadoc for %{name}
 Group:          Development/Documentation
+Requires:       jpackage-utils
 
 %description javadoc
 Javadoc for %{name}.
@@ -119,7 +105,7 @@ Javadoc for %{name}.
 %prep
 %setup -q -n %{name}
 
-%patch0 -b .sav
+%patch0 -p1 -b .sav
 
 %build
 
@@ -127,75 +113,48 @@ export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
 mkdir -p $MAVEN_REPO_LOCAL
 
 # FIXME: Ignoring text failures for now
-mvn-jpp \
-        -e \
+# this is due to fact that test ignore artifact in local repo for some reason
+mvn-jpp -e \
         -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
-        -Dmaven2.jpp.mode=true \
-        -Dmaven.test.failure.ignore=true \
+        -Dmaven.test.skip=true \
         install javadoc:javadoc
 
 %install
-rm -rf $RPM_BUILD_ROOT
 # jars
 install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/plexus
 install -pm 644 target/*.jar \
-      $RPM_BUILD_ROOT%{_javadir}/%{parent}/%{subname}-%{version}.jar
-%add_to_maven_depmap org.codehaus.plexus %{name} 1.0-alpha-9 JPP/%{parent} %{subname}
-
-(cd $RPM_BUILD_ROOT%{_javadir}/%{parent} && for jar in *-%{version}*; \
-  do ln -sf ${jar} `echo $jar| sed  "s|-%{version}||g"`; done)
+      $RPM_BUILD_ROOT%{_javadir}/%{parent}/%{subname}.jar
+%add_to_maven_depmap org.codehaus.plexus %{name} %{version} JPP/%{parent} %{subname}
+%add_to_maven_depmap plexus %{name} %{version} JPP/%{parent} %{subname}
 
 # pom
-install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/maven2/poms
+install -d -m 755 $RPM_BUILD_ROOT%{_mavenpomdir}
 install -pm 644 pom.xml \
-  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{parent}-%{subname}.pom
+  $RPM_BUILD_ROOT%{_mavenpomdir}/JPP.%{parent}-%{subname}.pom
 
 # javadoc
-install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
-
-cp -pr target/site/apidocs/* \
-        $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}/
+install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}
 
-ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name}
+cp -pr target/site/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
 
-%if %{gcj_support}
-%{_bindir}/aot-compile-rpm
-%endif
-
-%clean
-rm -rf $RPM_BUILD_ROOT
 
 %post
 %update_maven_depmap
 
-%if %{gcj_support}
-if [ -x %{_bindir}/rebuild-gcj-db ]
-then
-  %{_bindir}/rebuild-gcj-db
-fi
-%endif
-
 %postun
 %update_maven_depmap
 
-%if %{gcj_support}
-if [ -x %{_bindir}/rebuild-gcj-db ]
-then
-  %{_bindir}/rebuild-gcj-db
-fi
-%endif
+%pre javadoc
+# workaround for rpm bug, can be removed in F-17
+[ $1 -gt 1 ] && [ -L %{_javadocdir}/%{name} ] && \
+rm -rf $(readlink -f %{_javadocdir}/%{name}) %{_javadocdir}/%{name} || :
+
 
 %files
 %defattr(-,root,root,-)
 %{_javadir}/plexus
-%{_datadir}/maven2
-%{_mavendepmapfragdir}
-%config(noreplace) /etc/maven/fragments/plexus-runtime-builder
-
-%if %{gcj_support}
-%dir %attr(-,root,root) %{_libdir}/gcj/%{name}
-%attr(-,root,root) %{_libdir}/gcj/%{name}/runtime-builder-1.0.jar.*
-%endif
+%{_mavenpomdir}/*
+%{_mavendepmapfragdir}/*
 
 %files javadoc
 %defattr(-,root,root,-)
@@ -203,6 +162,12 @@ fi
 
 
 %changelog
+* Fri Dec 17 2010 Stanislav Ochotnicky <sochotnicky at redhat.com> - 0:1.0-0.5.a9
+- Versionless jars & javadocs
+- Add compatibility depmap plexus:plexus-runtime-builder
+- Drop gcj support
+- Update patch
+
 * Sun Jul 26 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0:1.0-0.4.a9.1.9
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
 


More information about the java-sig-commits mailing list