You are correct that I have my eclipse output directed to target/classes. However, shouldn't buildr still detect that my test source file was edited and recompile that test regardless of where my eclipse output is?
I wonder if Eclipse only updates the last-modified timestamp on the test java file and forgets to update the last-modified timestamp on the folder containing that file. Would that cause this kind of behavior in Buildr? On Fri, Feb 8, 2013 at 10:08 AM, Antoine Toulme <[email protected]>wrote: > Chris, I think you have set up your Eclipse's project's output to be > target/classes. > The new .class file is compiled by Eclipse, and Buildr doesn't see the > changes because Eclipse sets up the timestamp on the .class file. > > Ideally, you'd want to have Eclipse compile classes in a different target > folder, like bin. This way both systems are independent. That's what I have > done on most of my projects. > It sometimes cannot work if you are adding class files through antlr or > similar practices. > > > On Fri, Feb 8, 2013 at 5:29 AM, Chris Bozic <[email protected]> wrote: > > > Alex, > > > > When making my simple test project, I discovered that Eclipse Juno seems > to > > be a key ingredient in getting this behavior to occur in Buildr. Other > > editors I test seem to cause Buildr to detect the change in src/test/java > > as desired. I'm not sure what Eclipse Juno is doing differently. It > > appears to be updating the last modified timestamp in the file system > like > > the other editors. > > > > Although, it's not currently clear where the problem is, I'll still > submit > > the test project with my notes so the Buildr experts can be aware of it. > > > > https://issues.apache.org/jira/browse/BUILDR-661 > > > > Thanks, > > Chris Bozic > > > > On Fri, Feb 8, 2013 at 12:58 AM, Alex Boisvert <[email protected] > > >wrote: > > > > > Hi Chris, > > > > > > Buildr should detect the new test, compile it and and run it as soon as > > > it's added. If you're not seeing this, it's a bug. Please file an > > > issue and if you can, include a project that reproduces the behavior > > you're > > > seeing. We'll review it and figure out what's going on... > > > > > > alex > > > > > > On Thu, Feb 7, 2013 at 5:11 PM, Chris Bozic <[email protected]> wrote: > > > > > > > I have a buildr test behavior situation and I'd like to respectfully > > get > > > > some opinions. I have a typical Java project where I have source > code > > > > under src/main/java and I have test code under src/test/java. > Suppose > > I > > > > start by running "buildr clean test" which runs all tests after > > compiling > > > > everything. Next, suppose I add a test method to an existing test > > class > > > > under src/test/java without touching any code under src/main/java. > > Now, > > > I > > > > want to execute that new test by running "buildr test" > > > > > > > > What should happen next? > > > > a) Buildr compiles the new test and executes it > > > > b) Buildr ignores the new test because no files under src/main/java > > were > > > > touched > > > > > > > > Currently, choice B happens and most of the time under different > > > use-cases > > > > I think that's great! However, with the use-case I describe, I'm not > > > sure > > > > it's good. It's possible that in larger projects with several > > > sub-projects > > > > (each with their own tests) that a developer might think Buildr > > executed > > > > the new test and perceive a false "success". This situation is > > worsened > > > if > > > > the new test fails when it actually is executed revealing a bug in > > > > src/main/java that might now go overlooked because of this behavior > in > > > > Buildr. > > > > > > > > I wonder what others think of this situation. Am I missing > something? > > > > > > > > Respectfully, > > > > Chris Bozic > > > > > > > > Running Buildr 1.4.9 > > > > > > > > > >
