Techspace

IT happens only in IT

Grails Maven Integration

Note: Information provided in this post may get outdated soon, because Grails, it’s plugin and dependencies gets updated very frequently.

Today I was trying to integrate my existing grails application with Maven. I had hard time with it. I referred to the following information

  • http://grails.org/Maven+Integration
  • http://forge.octo.com/maven/sites/mtg/grails-maven-plugin/examples/mavenize-a-grails-app.html

The pom generated by the plugin was of Grails 1.1 and I was using grails 1.1.1 therefore I had to make the following changes in my pom.xml


<dependency>
 <groupId>org.grails</groupId>
 <artifactId>grails-crud</artifactId>
 <version>1.1.1</version>
 </dependency>
 <dependency>
 <groupId>org.grails</groupId>
 <artifactId>grails-gorm</artifactId>
 <version>1.1.1</version>
 </dependency>

Since I was using MySql I had to add this too


<dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <version>3.1.14</version>
 </dependency>

Also you need to add this


<dependency>
 <groupId>org.tmatesoft.svnkit</groupId>
 <artifactId>svnkit</artifactId>
 <version>1.2.3.5521</version>
 <scope>runtime</scope>
 </dependency>

If you are not using Acegi then this is all you need to do for Maven integration. If you are using Acegi then you might have to make some more changes. In my case, I was getting ClassNotFoundException  for net.sf.ehcache.CacheException. I had to manually copy ehcache-1.3.0.jar from $MAVEN_REPOSITORY_HOME/repository/net/sf/ehcache/1.3.0 to $GRAILS_PROJECT_HOME/plugins/acegi/lib. It solved my issue and I was successfully able to run my grails app using mvn grails:run-app

As I said before, information in this post may get outdated very soon. But it solved my problem and it might solve your too.

September 10, 2009 Posted by Paras | Grails, Maven | , , , | No Comments Yet