buildr-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Assaf Arkin (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (BUILDR-110) error creating buildfile from pom
Date Tue, 29 Jul 2008 00:40:32 GMT

     [ https://issues.apache.org/jira/browse/BUILDR-110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Assaf Arkin resolved BUILDR-110.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 1.3.3

> error creating buildfile from pom
> ---------------------------------
>
>                 Key: BUILDR-110
>                 URL: https://issues.apache.org/jira/browse/BUILDR-110
>             Project: Buildr
>          Issue Type: Bug
>          Components: Core features
>    Affects Versions: 1.3.1, 1.3.2
>            Reporter: Geoffrey Ruscoe
>             Fix For: 1.3.3
>
>
> When using option to create buildfile from maven2 pom I got the following error (after
I turned on trace)
> rake aborted!
> undefined method `find' for nil:NilClass
> /usr/local/jruby-1.1.3/lib/ruby/gems/1.8/gems/buildr-1.3.2-java/lib/buildr/core/generate.rb:153:in
`from_maven2_pom'
> After looking into the issue I found that the code in question was the following:
>         plugins = project['build'].first['plugins'].first['plugin'] rescue {}
>         compile_plugin = plugins.find{|pl| (pl['groupId'].nil? or pl['groupId'].first
== 'org.apache.maven.plugins') and pl['artifactId'].first == 'maven-compiler-plugin'}
>         if compile_plugin
>           source = compile_plugin.first['configuration'].first['source'] rescue nil
>           target = compile_plugin.first['configuration'].first['target'] rescue nil
>           script << "  compile.options.source = '#{source}'" if source
>           script << "  compile.options.target = '#{target}'" if target
>         end
> my projects use a parent pom which specifies some of the plugins, so I think that some
of them may not have any.  All I did for a fix was to wrap with the test for nil.  While this
worked for me (at least to create my buildfile).  I am just starting to learn the source,
so this patch will need a more expert opinion.
>         plugins = project['build'].first['plugins'].first['plugin'] rescue {}
>         if plugins != nil
>           compile_plugin = plugins.find{|pl| (pl['groupId'].nil? or pl['groupId'].first
== 'org.apache.maven.plugins') and pl['artifactId'].first == 'maven-compiler-plugin'}
>           if compile_plugin
>             source = compile_plugin.first['configuration'].first['source'] rescue nil
>             target = compile_plugin.first['configuration'].first['target'] rescue nil
>             script << "  compile.options.source = '#{source}'" if source
>             script << "  compile.options.target = '#{target}'" if target
>           end
>         end

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message