Uploaded image for project: 'Buildr (Retired)'
  1. Buildr (Retired)
  2. BUILDR-77

Layout feature not working

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.3
    • 1.3.1
    • Core features
    • None
    • WindowsXP, OSX

    Description

      Layouts as documented on the buildr site here (http://incubator.apache.org/buildr/extending.html#using_alternative_layouts) aren't working.

      My custom My sources are in src, tests in test. Here's the buildfile:

      require 'buildr'

      VERSION_NUMBER = '1.0'

      repositories.remote << 'http://www.ibiblio.org/maven2/'

      define 'app' do

      project.version = VERSION_NUMBER
      compile.options.target = '1.5'

      legacy_layout = Layout.new
      legacy_layout[:source, :main, :java] = 'src'
      legacy_layout[:source, :test, :java] = 'test'

      define 'myproject', :layout => legacy_layout do
      puts "Path to: #

      {path_to(:source, :main, :java)}

      "
      puts "Compile target: #

      {compile.target}

      "
      puts "Compile sources: #

      {compile.sources}

      "
      package :jar
      end

      end

      The build fails with output:

      C:\Documents and Settings\neil\test>buildr
      (in C:/Documents and Settings/neil/test, development)
      Path to: C:/Documents and Settings/neil/test/myproject/src
      Compile target: C:/Documents and Settings/neil/test/myproject/target/main/classes
      Compile sources:
      Building app
      Testing app
      Testing app:myproject
      IOException: No file or directory with the name C:\Documents and Settings\neil\test\myproject\target\main\classes
      rake aborted!
      No file or directory with the name C:\Documents and Settings\neil\test\myproject\target\main\classes

      When you create the directories it complains about (strangely target/main/classes and target/test/classes), the build passes, but nothing gets compiled or tested.

      When the sources are in the default place, you get debugging output from the compile task like this:

      Path to: C:/Documents and Settings/neil/test/second/src/main/java
      Compile target: C:/Documents and Settings/neil/test/second/target/classes
      Compile sources: C:/Documents and Settings/neil/test/second/src/main/java
      Building app
      Compiling app:second

      Attachments

        Activity

          People

            vic Victor Hugo Borja
            ncurzon Neil Curzon
            Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: