ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Reilly <peterrei...@apache.org>
Subject Re: storing optional (ftp) task jar dependency under my project instead of under /ant/lib
Date Wed, 13 Jul 2005 13:03:30 GMT
Asle Pedersen wrote:

>Ok, in that case alt.3 is not very attractive afterall. I don't know
>if it is just me but I prefer do embed this type of behaviour in the
>build.xml and project itself.
>  
>
Indeed,
I would argue that the whole idea of spitting the optional ant tasks 
into a relatively
large number of jar files to work-around the classloading probem was not 
a good idea.
To make use of it, one has to modify the ant distribution.

Peter

>I have had similar problems with system environment variables in
>particular charset encodings which need to be set outside of the
>build.xml. Instead of just executing the build.xml this causes me to
>have a shellscript to set the environment variables and execute the
>build.xml
>
>What I could do in this particular case is provide an install
>mechanism (a target in the build.xml perhaps) for the ftp-task which
>copies the commons-net-1.1.0.jar from the projects lib directory into
>$HOME\.ant\lib. That way it would be fairly straightforward to use.
>
>/A 
>
>
>On 7/12/05, Peter Reilly <peterreilly@apache.org> wrote:
>  
>
>>Asle Pedersen wrote:
>>
>>    
>>
>>>I prefer alt.3 and try using taskdefs before without success. I did
>>>try it again now also not successfully. Could you please supply me
>>>with a complete working example?
>>>
>>>This is how my (non-working) build.xml looks like now:
>>>(both .jar files are placed in the lib directory under the basedir)
>>>
>>><project name="imweb" default="upload" basedir=".">
>>>
>>>      <taskdef name="ftp" classname="org.apache.tools.ant.taskdefs.optional.net.FTP">
>>>       <classpath>
>>>         <pathelement location="/lib/ant-commons-net.jar"/>
>>>         <pathelement location="/lib/commons-net-1.1.0.jar"/>
>>>       </classpath>
>>>      </taskdef>
>>>
>>>      <target name="upload">
>>>              <ftp server="..." userid="... password="..." depends="yes" verbose="yes">
>>>                      <fileset dir="en" />
>>>              </ftp>
>>>      </target>
>>></project>
>>>
>>>Is it really necessary to place ant-commons-net in the classpath since
>>>it is already under the ant/lib path? btw! I am using ant.1.6.5
>>>
>>>
>>>      
>>>
>>See the FAQ on classloading.
>>Option number 3, as Ivan says, *requires" moving ant-commons-net.jar
>>out of the ant lib directory to some place else, otherwise the
>>ant-commons-net.jar gets
>>loaded at ant startup time (sort of, it is in the startup classpath), and
>>at this time (with this classpath) it cannot see the commons net classes
>>so the task will not start.
>>Peter
>>
>>    
>>
>>>Regards,
>>>Asle
>>>
>>>
>>>
>>>On 7/12/05, Ivan Ivanov <rambiusparkisanius@yahoo.com> wrote:
>>>
>>>
>>>      
>>>
>>>>Asle,
>>>>
>>>>You have several other alternatives to keep your ant
>>>>distribution clean of external libs:
>>>>1) Put commons-net-1.1.0.jar in $HOME\.ant\lib (my
>>>>favourite way)
>>>>2) Place it an arbitrary directory say
>>>>/path/to/thirdparty/jars and use -lib option of ant
>>>>launching script.
>>>>
>>>>3) (Requires more coding and its benefits are
>>>>doubtful). Move ant-commons-net.jar from $ANT_HOME/lib
>>>>to some other folder and in your build script
>>>><taskdef> ftp task like this:
>>>><taskdef name="ftp" classname="...">
>>>> <classpath>
>>>>   <pathelement
>>>>location="/path/to/ant-commons-net.jar"/>
>>>>   <pathelement location="/path/to/commons-net.jar"/>
>>>> </classpath>
>>>></taskdef>
>>>>
>>>>Regards
>>>>Ivan
>>>>
>>>>--- Asle Pedersen <apederse@gmail.com> wrote:
>>>>
>>>>
>>>>
>>>>        
>>>>
>>>>>Is it possible to "embed" the ant ftp task in a
>>>>>project. I would like
>>>>>to just depend on a standard ant-installation to use
>>>>>the ftp task and
>>>>>have the commons-net-1.1.0.jar in my project instead
>>>>>of under /ant/lib
>>>>>which is suggested by the documentation. I have
>>>>>tried different
>>>>>methods to do this but none have worked so far. Any
>>>>>suggestions?
>>>>>
>>>>>Regards,
>>>>>Asle
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>          
>>>>>
>>>>---------------------------------------------------------------------
>>>>
>>>>
>>>>        
>>>>
>>>>>To unsubscribe, e-mail:
>>>>>user-unsubscribe@ant.apache.org
>>>>>For additional commands, e-mail:
>>>>>user-help@ant.apache.org
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>          
>>>>>
>>>>____________________________________________________
>>>>Sell on Yahoo! Auctions – no fees. Bid on great items.
>>>>http://auctions.yahoo.com/
>>>>
>>>>
>>>>
>>>>        
>>>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
>>For additional commands, e-mail: user-help@ant.apache.org
>>
>>
>>    
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message