Posts Tagged maven

JRuby rake and maven

I cannot stand Maven. It makes me nauseous. However that does not seem to be the case for other institutionalised developers. Here’s what I did on a project where I wanted to isolate its craziness and still use jruby and rake.

namespace :maven do

  M2_HOME = "binaries/apache-maven-3.0.3"

  desc "Run the maven package goal"
  task :package => :clean do
    mvn "package"
  end

  desc "Run the application"
  task :application => :clean do
    mvn "test-compile", "exec:java", "-Dexec.mainClass=com.example.Application", "-Dexec.classpathScope=test"
  end

  desc "Run the maven dependencies report"
  task :dependencies do
    mvn "dependency:tree", "-DoutputFile=deps.txt"
  end

  def mvn(*args)
    require 'java'

    m2_conf = "#{M2_HOME}/bin/m2.conf"
    classpath = "#{M2_HOME}/boot/plexus-classworlds-2.4.jar"

    java.lang.System.setProperty('maven.home', M2_HOME)
    java.lang.System.setProperty('classworlds.conf', m2_conf)

    require classpath
    include_class Java::org.codehaus.plexus.classworlds.launcher.Launcher
    exit_code = Launcher.mainWithExitCode(args.flatten.to_java(:string))
    puts "Maven has completed with exit code: #{exit_code}"
    fail 'Build failed' if exit_code != 0
  end

end

You foul rancid beast.

Tags: , , ,

Spring-StringTemplate is now in Maven Central

For Ivy:

<dependency org="com.watchitlater" name="spring-stringtemplate" rev="1.5.1" />

For Maven (yeech):

<dependency>
  <groupId>com.watchitlater</groupId>
  <artifactId>spring-stringtemplate</artifactId>
  <version>1.5.1</version>
</dependency>

Thank you Sonatype.

Tags: , , , , ,