Cyriaque Dupoirieux wrote:
Steve Loughran a écrit :
Rishi Gogia wrote:
Hi
I am using SVN as a repository and Weblogic Integration as my
application server. I have more than 10 programmers working on the
same project. I wanted to know if I want to do a patch build, how
would I be able to do it?
By Patch build I mean compiling only those files which are changed. I
was able to get the files from the revision. But since the complete
build takes more than 20 minutes, I need to build only the changed
files and put them in their corresponding location in the ear.
The files which are changed can be java files as well as WSDL,
Processes etc. these need to be compiled and the class file needs to
be put in the ear.
Please suggest me a way how to do this.
Thanks in advance
Regards
Rishi
This is normally called an incremental build. By default, Ant builds
incrementally, if all the existing .class files are there.
Where you may have problems is that WSDL to Java may create new files
with new timestamps, that exactly match the previous source -your app
server's wsdl2java tool probably isnt dependency aware. If this is the
case
1. generate the wsdl2java output in one directory (say, build/wsdl/src )
2. use a <copy> with the <different> selector.
<copy todir="build/wsdl/src2" preservelastmodified="true">
<fileset dir="build/wsdl/src" includes="**/*>
<different targetdir="build/wsdl/src2"
ignoreFileTimes="false"/>
</fileset>
</copy>
3. compile the copied source
This ensures that only generated java source files that are different
from the previous set are copied, and hence compiled.
Hi,
I nearly have the same problem :
Sometimes we go and work in a customer site to make some bug fixing.
We need to include in a jar all the classes that have changed since
the last CVS update - and we don't have the access to CVS since we are
not at home...
The CVS client we use displays in red the changed files, but I don't
know how to find them with Ant ?
The idea to use the <copy> with the <different> selector is not to
bad if we have a copy of the sources corresponding to the CVS
repository. But maybe there is a better solution ?
Putting the "process police" hat on, dont do this. You run a risk of
mixing things, such as outdated class files.
when you get a support call "x doesnt work" and you say "what version
are you running", they will say "I dont know" -and you wont be able to
recreate it.
Give them a JAR of a clean build of a specific labelled repository version.
--
Steve Loughran http://www.1060.org/blogxter/publish/5
Author: Ant in Action http://antbook.org/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]