Take a look at the "Creating Extensions" section here:
http://buildr.apache.org/extending.html

I think it would be applicable to what you are doing.

alex


On Fri, Feb 6, 2009 at 2:02 PM, Rhett Sutphin <[email protected]>wrote:

> [Apologies if you see this twice -- I accidentally sent it to the old list.
>  It hasn't shown up in the archives so I'm resending it.]
>
> 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
>

Reply via email to