Resources & post-processing project definitions

View: New views
1 Messages — Rating Filter:   Alert me  

Resources & post-processing project definitions

by Rhett Sutphin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

Synopsis:  I'm having a problem with a buildfile where, if I define  
the resource paths outside of the initial project definition block,  
the resource target directories are not included on the classpath when  
running tests.  The resources are copied to target (during the compile  
and test:compile tasks) and packaged correctly (if I do package  
test=no), but they are not visible to the tests.

Details:  I am converting an existing project to use buildr.  It  
stores its resources alongside the code, so in each of the subprojects  
I have lines like these:

   resources.from(_("src/main/java")).exclude("**/*.java")
   test.resources.from(_("src/test/java")).exclude("**/*.java")

Hoping to DRY this up a bit, I replaced those repeated blocks with  
this code at the end of my buildfile:

projects.each do |p|
   if File.exist?(p._("src/main/java"))
     # All resources come from source path
     p.resources.from(p._("src/main/java")).exclude("**/*.java")
     p.test.resources.from(p._("src/test/java")).exclude("**/*.java")
   end
end

This introduced the problem I described in the synopsis.  Two questions:

- Is this a bug I should report on the issue tracker?  Or is it  
expected behavior?

- Is there a better way to do what I'm trying to do?

Thanks,
Rhett