prepared by hasan.we4tech.com

Slides:



Advertisements
Similar presentations
Apache Maven: J2EE Front to Back Jesse McConnell -
Advertisements

Agile Software Distribution
Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
OpusCollege and Spring-DM. OSGi based web applications – three strategies OSGi container embedded in another container: OSGi Bridge Server (OBS)  e.g.
Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
Introduction to Maven Michael Youngstrom. Notes This is a training NOT a presentation Please ask questions Prerequisites – Introduction to the Java Stack.
Transitions of Care Reference Implementation Development Overview July 5, 2011.
Functional Testing with the Java Stack Test Runner
Java Build Tool Comparison HJUG - April 29th, 2009 John Tyler.
Java development infrastructure at FMI Pekka Rantala FMI.
Maven: Build and project management in the 21th century.
CUSTOMIZING DSPACE 1.5 WITH BASIC OVERLAYS Open Repositories 2008 Tim Donohue Research Programmer IDEALS University of Illinois Graham Triggs Technical.
Packaging of EPICS-basedControl System Software
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
Deploying Dynamics Applications Thomas Hansen – Director, appSolutions a|s
Building Library Web Site Using Drupal
APACHE MAVEN Bhavana Sudharshan Jaydeep Patel. Introduction What is Maven? “Maven is a software management and comprehension tool based on the concept.
Maven and Stack Starter Michael Youngstrom. Notes This is a training NOT a presentation Please ask questions Prerequisites – Introduction to Java Stack.
Maven & Bamboo CONTINUOUS INTEGRATION. QA in a large organization In a large organization that manages over 100 applications and over 20 developers, implementing.
MAVEN-BLUEMARTINI Yannick Robin. What is maven-bluemartini?  maven-bluemartini is Maven archetypes for Blue Martini projects  Open source project on.
Sumedha Rubasinghe October,2009 Introduction to Programming Tools.
LDS Account Integration. Disclaimer This is a training NOT a presentation. – Be prepared to learn and participate in labs Please ask questions Prerequisites:
Using the ALM Module Fully Automated Deployments in Stack 3.2.
By Mircea Jivoin. Objectives Achieving the warehouse management over the internet using the SOAP Web Services Achieving the warehouse management over.
The DSpace Course Module - Look & Feel Customisation.
INFSOM-RI Juelich, 10 June 2008 ETICS - Maven From competition, to collaboration.
Search Technologies Maven Repository (Mirror) Central Repository (repo1.maven.org) Local Repository (/users/you/.m2) Local Machine Project target Project.
1 dec 20, 2007 Maven project automation for dummies Aino Andriessen AMIS.
1 may 31, 2007 Build, test and deploy ADF applications without effort with the use of Maven2 Aino Andriessen AMIS.
Artifact Management Managing Maven and other artifacts in Perforce.
Katari Globant 2008 (update to 2010). Katari  Katari is a framework to use as a starting point to develop new web applications.  Incorporates architecture,
Introduction to Maven 2. Basics Convention over Configuration Declarative project management DRY.
Maven for building Java applications By Nalin De Zoysa
Making Software Executable by Others Varun Ratnakar USC/ISI April 17, 2015
Software Deployment & Release 26/03/2015 1EN-ICE.
OpenMRS Create New Module.
8/29/10 Maven Repository Management with Nexus Jim McMahon.
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
Maven. Introduction Using Maven (I) – Installing the Maven plugin for Eclipse – Creating a Maven Project – Building the Project Understanding the POM.
CS520 Web Programming Introduction to Maven Chengyu Sun California State University, Los Angeles.
DECTRIS Ltd Baden-Daettwil Switzerland Continuous Integration and Automatic Testing for the FLUKA release using Jenkins (and Docker)
The Maven Alfresco SDK™ At the end of a journey, there is always a new beginning…
Anjana & Shankar September,2010 Introduction to Programming Tools.
Maven & NetBeans Platform. Agenda ● Maven NetBeans Platform Project Types ● Three NetBeans RCP project types ● Differences with Ant project types ● All.
Platform & Maven2 David Šimonek. Certified Engineer Course Agenda What is Maven? Why Maven? NB IDE & Maven NB Platform & Maven.
Distributing Repository functions with DSpace Richard Jones.
Building Library Web Site Using Drupal
Open-O Integration Project Introduction
with Some Eclipse Tricks included Safa Bacanlı Fall 16
Maven 04 March
CS520 Web Programming Introduction to Maven
Plan What is Maven ? Links : mvn command line tool
Updatecenter Module 3 Application Server SE/EE 8.1 Installation
External Web Services Quick Start Guide
Updatecenter Snjezana Sevo-Zenzerovic
Test Driven Development
RTC – Source Control Management
Google Web Toolkit - Gufran Mohammed
Project management and comprehension tool
CS427: Software Engineering I
CA16R405 - Mobile Application Development (Theory)
Using Maven2.
Maven IIB9 Plug-in Version 9.0
With Some Eclipse Tricks included.
JENKINS TIPS Ideas for making your life with Jenkins easier
Maven IIB9 Plug-in Version 9.0
Escidoc build and development environment
CS 240 – Advanced Programming Concepts
Java Code Review with CheckStyle
Presentation transcript:

prepared by hasan.we4tech.com Maven prepared by hasan.we4tech.com

What is maven?

Java based project management tool. Automated software build management tool. Repository centric dependent library resolution. Project status reporting tool Project documenting tool Product release management tool Configuration management supporting tool

Why is maven?

Java based project management. Project document management. Project status report management. Project goal wise module separation tool. Company wide snapshot or release repository Better product and module centric approach. Easy to use

Typical project iteration

Where is maven?

How can maven helps on development?

Making build process much easier. Dependency management Centralizing module dependency. Maintaining a standard project layout. Generating report on broken code, broken coding convention, unit test code coverage etc…

Dependency management!

Centralizing module dependency!!

Standard project layout!!

What is maven repository?

Build a sample project

Mavenized terms

What is POM (Project Object Model)? What is artifact? What is group? What is archetype? What is goal? What is dependency?

POM

Goal mvn package mvn compile mvn clean mvn test mvn javadoc:javadoc mvn site …

Dependency <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies>

Maven phases

validate generate-sources process-sources generate-resources process-resources compile

Typical goals and usages

Create parent project POM file. Create a new maven project Create a web application module Generate intelliJ IDEA project files Packaging whole project

Create parent project POM file. <?xml version="1.0" encoding="UTF-8"?> <project> <modelVersion>4.0.0</modelVersion><groupId>com.company.project</groupId> <artifactId>project-parent</artifactId><packaging>pom</packaging> <version>1.0-SNAPSHOT</version> <name>project name</name> <modules> <!--module>project-core</module--> </modules> <!-- somewhere in repository --> <repositories> <repository> <id>somewherein</id> <url>http://maven.somewherein.net/</url> </repository> </repositories> <dependencies> <dependency> <artifactId>xom</artifactId> <groupId>xom</groupId> <version>1.1</version> </dependency> </dependencies> </project>

Create a new maven project mvn archetype:create \ –DgroupId=com.company.project \ –DartifactId=project-core

Create a new web application module mvn archetype:create \ –DgroupId=com.company.project \ –DartifactId=project-core \ –DarchetypeArtifactId=maven-archetype-webapp

Generate intelliJ IDEA or eclipse project files mvn idea:idea Or mvn eclipse:eclipse

Packaging whole project mvn install Or mvn package

Configure somewhere repository Go to maven_home/conf/settings.xml Set the following line – <localRepository>\\192.168.1.254\software\24_maven_repository</localRepository>

How to find artifact? Search google – i.e : maven xom Manually browse public repository http://ibiblio.org/maven/ http://repo1.maven.org/maven2/ http://maven.somewherein.net [directory indexing is not enabled]

How to use somewhere in Continuous build server?

Changes on your pom file. <ciManagement> <system>continuum</system> <notifiers> <notifier> <type>mail</type> <configuration> <address>hasan@somewherein.net</address> </configuration> </notifier> </notifiers> </ciManagement> <scm> <connection>svn://host/os/project/trunk/</connection> <developerConnection>svn://somewhereindhaka.net/os/ideabase/idea_content_repo/trunk/development</developerConnection> <tag>HEAD</tag> <url>http://somewhereindhaka.net/os/ideabase/idea_content_repo/trunk/development</url> </scm>

Go to (ask me for url) continuum server url Login using user and password (ask me if you need user and password) Select “maven 2.0+ project” from right side menu. Give your maven pom file url from. i.e – http://host/svn/project/pom.xml

That’s all :D

Thank you every one and those who brought such a nice tool 