Hi folks,
consider this very simple project with just two files in it:
/test/app-war/src/main/webapp/css/test.css
/test/app-war/src/main/webapp/test.html
Create a build file from directory structure for this and then execute
the following commands:
buildr package
echo "test" > /test/app-war/src/main/webapp/css/test.css
buildr package
The first command creates a WAR package with my files in it. So far, so
good.
The second command updates the test.css file.
The third command executes the package task again, but buildr did not
detect any changes! The WAR still contains the old file!
Is this a bug? If not, could someone explain to me why not?
Now if I make a change to the "test.html" file, then buildr will detect
the change - and also update my css file!
buildr also detects changes if I "touch" the webapp folder.
It seems to me that buildr works like this:
The WarTask has the webapp folder as prerequisite. If I change a file
inside the webapp folder, this updates the timestamp for the webapp
folder and the prerequisite is executed. However, if I change a file in
a subfolder, then the timestamp of webapp is of course not touched and
thus the task does not execute. Is this correct?
Anyhow, I would have expected buildr to pick up changes anywhere in the
webapp folder by itself. Any help on this would be greatly appreciated!
Cheers, Ingo =;->
|