You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-dev@incubator.apache.org by Ja...@rzf.fin-nrw.de on 2007/07/04 05:44:11 UTC

AW: svn commit: r552892 - /incubator/ivy/core/trunk/build.xml

As Ivy has a command line interface ... would it be useful, if the jars
are startable?

Jan



Index: build.xml
===================================================================
--- build.xml	(revision 553083)
+++ build.xml	(working copy)
@@ -255,6 +255,7 @@
 				<attribute name="Extension-name" value="org.apache.ivy" />
 				<attribute name="Build-Version" value="${build.version}" />
 				<attribute name="Bundle-Version" value="${bundle.version}" />
+				<attribute name="Main-Class" value="org.apache.ivy.Main"/>
 			</manifest>
 			<fileset dir="${core.classes.build.dir}" />
 			<fileset dir="${ant.classes.build.dir}" />
@@ -270,6 +271,7 @@
 				<attribute name="Implementation-Version" value="${build.version}" />
 				<attribute name="Implementation-Vendor" value="Apache Software Foundation" />
 				<attribute name="Build-Version" value="${build.version}" />
+				<attribute name="Main-Class" value="org.apache.ivy.Main"/>
 			</manifest>
 			<fileset dir="${core.classes.build.dir}" />
 			<fileset dir="${optional.classes.build.dir}" />




 

>-----Ursprüngliche Nachricht-----
>Von: xavier@apache.org [mailto:xavier@apache.org] 
>Gesendet: Dienstag, 3. Juli 2007 18:07
>An: ivy-commits@incubator.apache.org
>Betreff: svn commit: r552892 - /incubator/ivy/core/trunk/build.xml
>
>Author: xavier
>Date: Tue Jul  3 09:06:31 2007
>New Revision: 552892
>
>URL: http://svn.apache.org/viewvc?view=rev&rev=552892
>Log:
>review jar manifest and generate small doc about jars (with 
>contribution from Tjeerd Verhagen)
>
>Modified:
>    incubator/ivy/core/trunk/build.xml
>
>Modified: incubator/ivy/core/trunk/build.xml
>URL: 
>http://svn.apache.org/viewvc/incubator/ivy/core/trunk/build.xml
>?view=diff&rev=552892&r1=552891&r2=552892
>===============================================================
>===============
>--- incubator/ivy/core/trunk/build.xml (original)
>+++ incubator/ivy/core/trunk/build.xml Tue Jul  3 09:06:31 2007
>@@ -246,34 +246,43 @@
> 				manifest="${basedir}/MANIFEST.MF">
> 			<metainf dir="${basedir}" 
>includes="LICENSE,DISCLAIMER,NOTICE" />
> 			<manifest>
>+				<attribute 
>name="Specification-Title" value="Apache Ivy with Ant tasks" />
>+				<attribute 
>name="Specification-Version" value="${build.version}" />
>+				<attribute 
>name="Specification-Vendor" value="Apache Software Foundation" />
>+				<attribute 
>name="Implementation-Title" value="org.apache.ivy" />
>+				<attribute 
>name="Implementation-Version" value="${build.version}" />
>+				<attribute 
>name="Implementation-Vendor" value="Apache Software Foundation" />
>+				<attribute 
>name="Extension-name" value="org.apache.ivy" />
> 				<attribute name="Build-Version" 
>value="${build.version}" />
> 				<attribute 
>name="Bundle-Version" value="${bundle.version}" />
>-				<section name="org/apache/ivy">
>-					<attribute 
>name="Extension-name" value="org.apache.ivy" />
>-					<attribute 
>name="Specification-Title" value="Apache Ivy" />
>-					<attribute 
>name="Specification-Version" value="${build.version}" />
>-					<attribute 
>name="Specification-Vendor" value="Apache Software Foundation" />
>-					<attribute 
>name="Implementation-Title" value="org.apache.tools.ant" />
>-					<attribute 
>name="Implementation-Version" value="${build.version}" />
>-					<attribute 
>name="Implementation-Vendor" value="Apache Software Foundation" />
>-				</section>
> 			</manifest>
>-				<fileset 
>dir="${core.classes.build.dir}" />
>-				<fileset 
>dir="${ant.classes.build.dir}" />
>-				<fileset 
>dir="${optional.classes.build.dir}" />
>+			<fileset dir="${core.classes.build.dir}" />
>+			<fileset dir="${ant.classes.build.dir}" />
>+			<fileset dir="${optional.classes.build.dir}" />
> 		</jar>
>   		<jar 
>destfile="${artifacts.build.dir}/${final.core.name}">
> 			<metainf dir="${basedir}" 
>includes="LICENSE,DISCLAIMER,NOTICE" />
> 			<manifest>
>+				<attribute 
>name="Specification-Title" value="Apache Ivy Core (without Ant 
>tasks)" />
>+				<attribute 
>name="Specification-Version" value="${build.version}" />
>+				<attribute 
>name="Specification-Vendor" value="Apache Software Foundation" />
>+				<attribute 
>name="Implementation-Title" value="org.apache.ivy" />
>+				<attribute 
>name="Implementation-Version" value="${build.version}" />
>+				<attribute 
>name="Implementation-Vendor" value="Apache Software Foundation" />
> 				<attribute name="Build-Version" 
>value="${build.version}" />
> 			</manifest>
> 			<fileset dir="${core.classes.build.dir}" />
> 			<fileset dir="${optional.classes.build.dir}" />
> 		</jar>
>+		<echo  
>file="${artifacts.build.dir}/readme.txt">The Ivy jars 
>explained${line.separator}
>+${line.separator}
>+${final.name}    The full Ivy jar, including all Ivy 
>classes.${line.separator}
>+${final.core.name}    The Ivy core, eg everything but classes 
>dependent on Ant.${line.separator}
>+		</echo>
>+
> 		<!-- clean generated module properties file -->
> 		<delete 
>file="${core.classes.build.dir}/module.properties" />
> 	</target>
>-	
> 
> 	<!-- 
>=================================================================
> 	     PUBLISH LOCAL
>
>
>

Re: svn commit: r552892 - /incubator/ivy/core/trunk/build.xml

Posted by Xavier Hanin <xa...@gmail.com>.
On 7/4/07, Jan.Materne@rzf.fin-nrw.de <Ja...@rzf.fin-nrw.de> wrote:
>
> As Ivy has a command line interface ... would it be useful, if the jars
> are startable?


The problem is that Ivy for its command line usage has a dependency on
commons-cli. Thus it requires settings the classpath, which is not handled
properly by the JAR specification (relative paths, not a very good idea),
and one of the reasons behind JSR-277.

But I've already wondered if it wouldn't make sense to get rid of this
dependency on commons-cli. I use the command line interface to use Ivy as a
launcher, and having to get commons-cli (and its dependencies) in the
classpath for this makes it less straightforward to use.

WDYT?

Xavier

Jan
>
>
>
> Index: build.xml
> ===================================================================
> --- build.xml   (revision 553083)
> +++ build.xml   (working copy)
> @@ -255,6 +255,7 @@
>                                 <attribute name="Extension-name" value="
> org.apache.ivy" />
>                                 <attribute name="Build-Version" value="${
> build.version}" />
>                                 <attribute name="Bundle-Version" value="${
> bundle.version}" />
> +                               <attribute name="Main-Class" value="
> org.apache.ivy.Main"/>
>                         </manifest>
>                         <fileset dir="${core.classes.build.dir}" />
>                         <fileset dir="${ant.classes.build.dir}" />
> @@ -270,6 +271,7 @@
>                                 <attribute name="Implementation-Version"
> value="${build.version}" />
>                                 <attribute name="Implementation-Vendor"
> value="Apache Software Foundation" />
>                                 <attribute name="Build-Version" value="${
> build.version}" />
> +                               <attribute name="Main-Class" value="
> org.apache.ivy.Main"/>
>                         </manifest>
>                         <fileset dir="${core.classes.build.dir}" />
>                         <fileset dir="${optional.classes.build.dir}" />
>
>
>
>
>
>
> >-----Ursprüngliche Nachricht-----
> >Von: xavier@apache.org [mailto:xavier@apache.org]
> >Gesendet: Dienstag, 3. Juli 2007 18:07
> >An: ivy-commits@incubator.apache.org
> >Betreff: svn commit: r552892 - /incubator/ivy/core/trunk/build.xml
> >
> >Author: xavier
> >Date: Tue Jul  3 09:06:31 2007
> >New Revision: 552892
> >
> >URL: http://svn.apache.org/viewvc?view=rev&rev=552892
> >Log:
> >review jar manifest and generate small doc about jars (with
> >contribution from Tjeerd Verhagen)
> >
> >Modified:
> >    incubator/ivy/core/trunk/build.xml
> >
> >Modified: incubator/ivy/core/trunk/build.xml
> >URL:
> >http://svn.apache.org/viewvc/incubator/ivy/core/trunk/build.xml
> >?view=diff&rev=552892&r1=552891&r2=552892
> >===============================================================
> >===============
> >--- incubator/ivy/core/trunk/build.xml (original)
> >+++ incubator/ivy/core/trunk/build.xml Tue Jul  3 09:06:31 2007
> >@@ -246,34 +246,43 @@
> >                               manifest="${basedir}/MANIFEST.MF">
> >                       <metainf dir="${basedir}"
> >includes="LICENSE,DISCLAIMER,NOTICE" />
> >                       <manifest>
> >+                              <attribute
> >name="Specification-Title" value="Apache Ivy with Ant tasks" />
> >+                              <attribute
> >name="Specification-Version" value="${build.version}" />
> >+                              <attribute
> >name="Specification-Vendor" value="Apache Software Foundation" />
> >+                              <attribute
> >name="Implementation-Title" value="org.apache.ivy" />
> >+                              <attribute
> >name="Implementation-Version" value="${build.version}" />
> >+                              <attribute
> >name="Implementation-Vendor" value="Apache Software Foundation" />
> >+                              <attribute
> >name="Extension-name" value="org.apache.ivy" />
> >                               <attribute name="Build-Version"
> >value="${build.version}" />
> >                               <attribute
> >name="Bundle-Version" value="${bundle.version}" />
> >-                              <section name="org/apache/ivy">
> >-                                      <attribute
> >name="Extension-name" value="org.apache.ivy" />
> >-                                      <attribute
> >name="Specification-Title" value="Apache Ivy" />
> >-                                      <attribute
> >name="Specification-Version" value="${build.version}" />
> >-                                      <attribute
> >name="Specification-Vendor" value="Apache Software Foundation" />
> >-                                      <attribute
> >name="Implementation-Title" value="org.apache.tools.ant" />
> >-                                      <attribute
> >name="Implementation-Version" value="${build.version}" />
> >-                                      <attribute
> >name="Implementation-Vendor" value="Apache Software Foundation" />
> >-                              </section>
> >                       </manifest>
> >-                              <fileset
> >dir="${core.classes.build.dir}" />
> >-                              <fileset
> >dir="${ant.classes.build.dir}" />
> >-                              <fileset
> >dir="${optional.classes.build.dir}" />
> >+                      <fileset dir="${core.classes.build.dir}" />
> >+                      <fileset dir="${ant.classes.build.dir}" />
> >+                      <fileset dir="${optional.classes.build.dir}" />
> >               </jar>
> >               <jar
> >destfile="${artifacts.build.dir}/${final.core.name}">
> >                       <metainf dir="${basedir}"
> >includes="LICENSE,DISCLAIMER,NOTICE" />
> >                       <manifest>
> >+                              <attribute
> >name="Specification-Title" value="Apache Ivy Core (without Ant
> >tasks)" />
> >+                              <attribute
> >name="Specification-Version" value="${build.version}" />
> >+                              <attribute
> >name="Specification-Vendor" value="Apache Software Foundation" />
> >+                              <attribute
> >name="Implementation-Title" value="org.apache.ivy" />
> >+                              <attribute
> >name="Implementation-Version" value="${build.version}" />
> >+                              <attribute
> >name="Implementation-Vendor" value="Apache Software Foundation" />
> >                               <attribute name="Build-Version"
> >value="${build.version}" />
> >                       </manifest>
> >                       <fileset dir="${core.classes.build.dir}" />
> >                       <fileset dir="${optional.classes.build.dir}" />
> >               </jar>
> >+              <echo
> >file="${artifacts.build.dir}/readme.txt">The Ivy jars
> >explained${line.separator}
> >+${line.separator}
> >+${final.name}    The full Ivy jar, including all Ivy
> >classes.${line.separator}
> >+${final.core.name}    The Ivy core, eg everything but classes
> >dependent on Ant.${line.separator}
> >+              </echo>
> >+
> >               <!-- clean generated module properties file -->
> >               <delete
> >file="${core.classes.build.dir}/module.properties" />
> >       </target>
> >-
> >
> >       <!--
> >=================================================================
> >            PUBLISH LOCAL
> >
> >
> >
>



-- 
Xavier Hanin - Independent Java Consultant
http://xhab.blogspot.com/
http://incubator.apache.org/ivy/
http://www.xoocode.org/