Hi Sebastian, I just tested on OS X (Snow Leopard) and I can't reproduce your issue.
Further, each argument should be its own array value, like "--line-break", "1000". And redirection won't work as you expect since this isn't a shell, it's just a Unix exec() call. I have a feeling you may want to reach directly for the system() call or something along that line since Java::Commands doesn't really support redirection. alex On Fri, Feb 5, 2010 at 11:21 AM, Sebastian Hennebrueder <[email protected]>wrote: > On Mac OS I cannot execute something like > Java::Commands.java('-jar', "yuicompressor-2.4.2.jar", "--line-break 1000 > --type css src/main/webapp/styles/styles-all.css", > "> > src/main/webapp/styles/styles-all-min.css", > {:verbose=>true}) > > The reason is that the parameters are not joined with a ' ' > In java/commands.rb > the method def java(*args, &block) needed the line below. Most likely > this may break thinks on Windows. The orgininal developer will probably know > how to fix it correctly. > > unless Buildr.application.options.dryrun > info "Running #{name}" > block = lambda { |ok, res| fail "Failed to execute #{name}, see > errors above" unless ok } unless block > puts cmd_args.join(' ') if Buildr.application.options.trace > cmd_args = cmd_args.map(&:inspect).join(' ') if Util.win_os? > # neeeded the next line on MAC OS > cmd_args = cmd_args.join(' ') > # end of mac changes > sh(*cmd_args) do |ok, ps| > block.call ok, ps > end > end > > -- > Best Regards / Viele Grüße > > Sebastian Hennebrueder > ----- > Software Developer and Trainer for Hibernate / Java Persistence > http://www.laliluna.de > > > >
