Maven. Introduction Using Maven (I) – Installing the Maven plugin for Eclipse – Creating a Maven Project – Building the Project Understanding the POM.

Slides:



Advertisements
Similar presentations
Vakgroep Informatietechnologie Deel III: Paradigma’s Software Ontwikkeling 2. Make-bestanden versus Ant Prof.Dr.Ir. Filip De Turck.
Advertisements

Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
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.
Build your Android App with Gradle Android new build system.
Transitions of Care Reference Implementation Development Overview July 5, 2011.
1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
Goals Give you a feeling of what Eclipse is.
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.
Presented by Mina Haratiannezhadi 1.  publishing, editing and modifying content  maintenance  central interface  manage workflows 2.
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
ANDROID PROGRAMMING MODULE 1 – GETTING STARTED
Open source administration software for education research administration Lin-Long Shyu System Analyst Kuali Coeus Technical Team Indiana University
Deploying and Managing Software by Using Group Policy.
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.
Servlets Environment Setup. Agenda:  Setting up Java Development Kit  Setting up Web Server: Tomcat  Setting up CLASSPATH.
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.
IPT2 user interface customization and locale translation Alan Yang, Kun Chi Lai, Jim Hsu Biodiversity Research Center, Academia Sinica.
Sumedha Rubasinghe October,2009 Introduction to Programming Tools.
COMP-14: Automating your deployments using ANT Gary S Clink Business Consultant.
Ali Shahrokni Application Components Activities Services Content providers Broadcast receivers.
LDS Account Integration. Disclaimer This is a training NOT a presentation. – Be prepared to learn and participate in labs Please ask questions Prerequisites:
Developing Axis based Web Services using Eclipse 3.3 Saurabh Mittal Feb 28, 2008.
Using the ALM Module Fully Automated Deployments in Stack 3.2.
INFSOM-RI Juelich, 10 June 2008 ETICS - Maven From competition, to collaboration.
MAE Continuous Integration Administration guide July 8th, 2013.
Using the ALM Module Michael Youngstrom. Disclaimer This is a training NOT a presentation. – Be prepared to learn and participate in lab Please ask questions.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Introduction to Eclipse CSC 216 Lecture 3 Ed Gehringer Using (with permission) slides developed by— Dwight Deugo Nesa Matic
Version Control Systems with Subversion (SVN) and Tortoise.
Creating ontology Hands on! universAAL Training Day Barcelona, Spain 16 January 2014
Module 6: Deploying and Managing Software by Using Group Policy.
Definition (Wikipedia)  What is deployment ? “Software deployment is all of the activities that make a software system available for use.” 1. Install.
Maven for building Java applications By Nalin De Zoysa
Surya Bahadur Kathayat Outline  Ramses  Installing Ramses  Ramses Perspective (Views and Editors)  Importing/Exporting Example.
Build Systems Presentation December 14, 2015 Noon-1pm Kathy Lee Simunich Bldg. 203/ D120 Brought to you by: Argonne Java.
Loader Tutorial Set Up. Requirements Java 7 Eclipse IvyIDE plugin Git Optional: Ant Maven.
® IBM Software Group © 2006 IBM Corporation Rational Asset Manager v7.2 Using Scripting Tutorial for using command line and scripting using Ant Tasks Carlos.
Software Deployment & Release 26/03/2015 1EN-ICE.
OpenMRS Create New Module.
Introduction to Linux Server Setup Jonathan Hood CSE 4000 Practical Issues in Software Engineering.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
8/29/10 Maven Repository Management with Nexus Jim McMahon.
PAPYRUS Tutorial CSOS 손 태 용.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
CS520 Web Programming Introduction to Maven Chengyu Sun California State University, Los Angeles.
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.
Introduction to Android Programming
Maven 04 March
CS520 Web Programming Introduction to Maven
Build Automation with Gradle
Plan What is Maven ? Links : mvn command line tool
Obtaining the Required Tools
Automatic RElease Service
prepared by hasan.we4tech.com
Advanced Integration and Deployment Techniques
Maven IIB9 Plug-in Version 9.0
With Some Eclipse Tricks included.
Maven IIB9 Plug-in Version 9.0
Escidoc build and development environment
The Most Popular Android UI Automation Testing Tool Andrii Voitenko
Java Code Review with CheckStyle
Software Engineering and Architecture
Presentation transcript:

Maven

Introduction Using Maven (I) – Installing the Maven plugin for Eclipse – Creating a Maven Project – Building the Project Understanding the POM – Maven Lifecycle – Plugins – Repositories Using Maven (II) – A Project example Repository Managers

Introduction to Maven Maven is a tool for software project management. – Based on a model of the project (POM = project object model), Maven can manage a project’s build, reporting and documentation from a central piece of information

Introduction to Maven Maven… – It provides an extensible mean to build the software. Using additional plugins, the build process can include execution of tests, generation of documentation and deploy of application in different servers. – Maven includes support for dependency management. It can download the required libraries and help to developers in the detection of libraries conflicts.

Using Maven (I)

Using Maven Installing Maven plugin for Eclipse – To install the Sonatype’s maven plugin, you can use the traditional installation process. – You must use these update sites

❶Installing Maven plugin for Eclipse Select the option “Install New Software” from the Help menu.

❶Installing Maven plugin for Eclipse Add the software update sites into the Eclipse

❶Installing Maven plugin for Eclipse Define the repositories for the plugin – Maven for Eclipse – Maven Extra for Eclipse

❶Installing Maven plugin for Eclipse Search and install the plugin

❷ Creating a Project Creating a project (using an archetype) – Select the option “New” -> “Project…” from the menu “File”

❷ Creating a Project Select the “Maven Project” type

❷ Creating a Project If it is desired, change the default location and the working set for the new project

❷ Creating a Project Select the desired archetype. ( e.g. maven-archetytpe- quickstart)

❷ Creating a Project Define the project parameters

❷ Creating a Project Project Parameters: – Group Id : Name of the group of projects. Can be related to the company or application name. Ideally, must be unique (worldwide). – Artifact Id : Name of the component or application (project) – Version : Identifier for the version of the component. You can define different versions for the same component. – Package Name : Name of the java package where the initial source code will be generated.

❸ Reviewing the Project Reviewing (Modifying) the project – Usually, the archetype is only a skeleton that you can use as foundation for your projects. – It can provide source code and files in a maven- standard structure

❸ Reviewing the Project Maven-standard structure Different folders for application and test source code An specific folder for binaries and packages A project object model (POM) specification file

❸ Building the Project Building the project – If you are using automatic build, the entire project is build after any file modification.

❸ Building the Project Building the project – However, additional build types can be performed using Maven-specific menu options.

Understanding the POM

Project properties Dependencies

Understanding Maven Maven Lifecycle – Compile – Test – Package – Install – Deploy

Understanding Maven Additional tasks for Maven – Clean – Assembly:assembly – Site – Site-deploy – … Maven plugins can include additional tasks

Using Maven (II)

Using Maven A simple project – This first example uses a basic project from Cupi2. – Typically, a Cupi2 project includes a set of unit tests. These tests can be integrated into the maven process in order to perform the unit tests and generate reports of the results.

Using Maven A more-complex example – Several projects can be organized for components (assets) and products. – A product can be defined including combinations and dependencies to several components (assets)

Repository Managers

– A local maven repository can be configured using SVN. – For additional functionality, software for repository management can be also used in a company for its private components and products.

Repository Managers Apache Archiva (

Repository Managers Artifactory ( )

Repository Managers Sonatype Nexus (