Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Apache Tomcat Maven plugin features

Apache Tomcat Maven plugin features

Avatar for Olivier Lamy

Olivier Lamy

May 15, 2012
Tweet

More Decks by Olivier Lamy

Other Decks in Programming

Transcript

  1. © Talend 2011 2 Agenda  Overview and history 

    What you can do:  Run your war project in an embeded Apache Tomcat within your Apache Maven build  Deploy your war in a running Apache Tomcat instance  Features recently implemented  Questions
  2. © Talend 2011 3 /me Olivier Lamy Open Source Architecte

    @Talend in the Apache Team.  Apache Member : PMC Maven/Archiva, Commons, Tomcat, Incubator : Sqoop, Kalumet, DirectMemory  Jenkins committer  Mojo committer  Etc... (add bugs in various open source projects) Web Ids :  Twitter: twitter.com/olamy  Blog: olamy.blogspot.com
  3. © Talend 2011 4 Overview and history Developpement started in

    Mojo at Codehaus early 2006. For trademark issue move to Apache Tomcat umbrella in 2011. Now developpement at Apache with groupId change to org.apache.tomcat.maven and Mojos renamed to tomcat6 :* with support added of Tomcat7 tomcat7 :*
  4. © Talend 2011 5 Running an embeded Apache Tomcat Simply

    use mvn tomcat*:run to run your Apache Maven war project. No Apache Tomcat to install locally. Maven will download all necessary jars to run an embeded Tomcat. In Maven3 multi modules project, reactors projects automatically added to the webapp classloader : no need to install all jars dependencies. Easy developpement of webapp : no need of restart/install war when modifying jsp/css etc... Debug in your ide with mvnDebug.
  5. © Talend 2011 6 Deployment in Apache Tomcat Deploy your

    Apache Maven project in a running Apache Tomcat instance. Attach the deploy goal to the deploy phase in a profile and your build war will be deploy in a running Tomcat instance. Simple : mvn deploy -Ptdeploy Run the Maven lifecycle (build your war, deploy it to your Repo Man and deploy it to your Tomcat instance)
  6. © Talend 2011 7 Executable jar/war Mojo goal to build

    a standalone jar to run your war. Jar will include your webapps and all necessary Tomcat jars. Cli : mvn tomcat7:exec-war produces a jar my-project-exec-war.jar Simply your project : jar -jar my-project-exec-war.jar Come with some default setup: http port, default server.xml But optionnal cli options : -httpPort -ajpPort etc.. (RTFM :-) )
  7. © Talend 2011 8 Maven archetype There is now an

    archetype : mvn archetype:generate \ -DarchetypeGroupId=org.apache.tomcat.maven \ -DarchetypeArtifactId=tomcat-maven-archetype \ -DarchetypeVersion=2.0-SNAPSHOT Generate a standard multi modules Maven project : * basic-api (service interface) * basic-api-impl (service default impl). * basic-webapp (our webapp module) * basic-webapp-exec (module to generated executable war) * basic-webapp-it (module to run selenium tests with generated war)