SlideShare une entreprise Scribd logo
1  sur  16
Maven & Versioning
Kadarkarai Selvam
Building a Project
❖ Creating a Executable file from the Project files
HelloWorld.java Java Compiler HelloWorld.class
Java Project Java Compiler HelloWorld.jar
Java Archive (JAR)
❖ JAR file is a compressed version of Class files
❖ JAR is a Package file contains
➢ Many JAVA Class Files (which is executable by JVM)
➢ Supporting configuration files (property files and other format data files)
➢ Resources such as text, image etc
➢ External Library files
Creating jar file
Version
● Each Software is subject to change or update its features
For example,
Initially a site can have signup with manual form. Then after a while, signup via
google credentials is created. Then after a while, signup via other social media
such as Facebook or linkedin will be created
● This changes in a software code is tracked as version
Selenium, Driver other Versions
❖ Selenium WebDriver is about to release Version 4 and is on beta testing
❖ Version history of WebDriver Link
❖ Browser versions are upgrading always to meet security and features
❖ This changes driver versions
❖ Chrome version history Link
Maven
❖ Powerful Project Management Tool for building a project
❖ Manage projects in various languages such as C#, Ruby and Scala, etc.
❖ Managing different dependencies with ease
Maven Project Structure
src/main/java directory includes the java source code
deliverables
src/test/java directory includes the Testing source code
in which our code will be present
resources directory includes the property files, images
and other useful resources for this project
target directory is the default output folder when the
project is build or packaged
Maven Environment Setup
❖ Maven is a Java Based tool and Requires JDK environment to setup
❖ Verify Java installation is present in the machine
Java -version
❖ Download maven Archive link from https://maven.apache.org/download.cgi
❖ Extract the archive folder
❖ Set Maven Environment Variables in windows
M2_HOME = C:Program Filesapache-maven-3.3.1
MAVEN_HOME = C:Program Filesapache-maven-3.3.1
MAVEN_OPTS = -Xms256m -Xmx512m
Maven Environment Setup
❖ Add System variables in windows
❖ Add Bin to System variable path
C:Program Filesapache-maven-3.3.1bin
❖ Verify Maven is installed
mvn -version
POM.xml
❖ Project Object Model is the core of maven
❖ It contains details to build the project
➢ Configurations
➢ Dependencies
➢ Plugins and Goals
➢ Build Profiles etc.
❖ Also contains information of project version, description, developers and
mailing lists, etc.
Initial POM
❖ Group Id : Generally it is a process or department name in which Project is used
❖ Artifact Id : Project name
❖ Version : Project Version
Maven Build Life Cycles
❖ Build Life Cycle in Maven is a predefined set of execution instruction
❖ Any Build Life cycle majorly contains the following Instruction / phases in any
order
compile Source Code is compiled using the compiler. (e.g. javac)
prepare-resources Customizing the resources to copy
package JAR/WAR package creation as mentioned in POM.xml
install Installs the package in a repository
deploy copies the final package file to a desired location
Some Maven Commands
mvn clean
❖ It will delete the build directory. Target folder is the place all class files are
stored
mvn install
❖ Will pack the resources
❖ Will compile the java files
❖ Will pack the files to jar in maven directory
Maven Repository
● Local Repository
In our local system
● Remote Repository
A shared space
● Central Repository -
https://mvnrepository.com/
Thank you
For any Assistance
kadarkarai@live.com
+91-9578921178

Contenu connexe

Tendances

Tendances (20)

Java-java virtual machine
Java-java virtual machineJava-java virtual machine
Java-java virtual machine
 
Java Virtual Machine (JVM), Difference JDK, JRE & JVM
Java Virtual Machine (JVM), Difference JDK, JRE & JVMJava Virtual Machine (JVM), Difference JDK, JRE & JVM
Java Virtual Machine (JVM), Difference JDK, JRE & JVM
 
Java Virtual Machine - Internal Architecture
Java Virtual Machine - Internal ArchitectureJava Virtual Machine - Internal Architecture
Java Virtual Machine - Internal Architecture
 
Jdk,jre,jvm
Jdk,jre,jvmJdk,jre,jvm
Jdk,jre,jvm
 
Architecture diagram of jvm
Architecture diagram of jvmArchitecture diagram of jvm
Architecture diagram of jvm
 
Java introduction with JVM architecture
Java introduction with JVM architectureJava introduction with JVM architecture
Java introduction with JVM architecture
 
QSpiders - Memory (JVM architecture)
QSpiders - Memory (JVM architecture)QSpiders - Memory (JVM architecture)
QSpiders - Memory (JVM architecture)
 
Java virtual machine
Java virtual machineJava virtual machine
Java virtual machine
 
JVM- Java Virtual Machine
JVM- Java Virtual MachineJVM- Java Virtual Machine
JVM- Java Virtual Machine
 
What's Inside a JVM?
What's Inside a JVM?What's Inside a JVM?
What's Inside a JVM?
 
Java Class 2
Java Class 2Java Class 2
Java Class 2
 
itft-Java evolution
itft-Java evolutionitft-Java evolution
itft-Java evolution
 
Java byte code presentation
Java byte code presentationJava byte code presentation
Java byte code presentation
 
Java virtual machine
Java virtual machineJava virtual machine
Java virtual machine
 
JVM
JVMJVM
JVM
 
Java Class1
Java Class1Java Class1
Java Class1
 
JRE , JDK and platform independent nature of JAVA
JRE , JDK and platform independent nature of JAVAJRE , JDK and platform independent nature of JAVA
JRE , JDK and platform independent nature of JAVA
 
Evolution Of Java
Evolution Of JavaEvolution Of Java
Evolution Of Java
 
Inside the jvm
Inside the jvmInside the jvm
Inside the jvm
 
Java History
Java HistoryJava History
Java History
 

Similaire à Maven and versioning

Apache maven, a software project management tool
Apache maven, a software project management toolApache maven, a software project management tool
Apache maven, a software project management tool
Renato Primavera
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
Ulrich Krause
 
Maven TestNg frame work (1) (1)
Maven TestNg frame work (1) (1)Maven TestNg frame work (1) (1)
Maven TestNg frame work (1) (1)
Gopi Raghavendra
 

Similaire à Maven and versioning (20)

Mavennotes.pdf
Mavennotes.pdfMavennotes.pdf
Mavennotes.pdf
 
Maven plugins, properties en profiles: Advanced concepts in Maven
Maven plugins, properties en profiles: Advanced concepts in MavenMaven plugins, properties en profiles: Advanced concepts in Maven
Maven plugins, properties en profiles: Advanced concepts in Maven
 
maven
mavenmaven
maven
 
Maven basics
Maven basicsMaven basics
Maven basics
 
Jenkins advance topic
Jenkins advance topicJenkins advance topic
Jenkins advance topic
 
Introduction to Maven
Introduction to MavenIntroduction to Maven
Introduction to Maven
 
Maven
MavenMaven
Maven
 
Maven
MavenMaven
Maven
 
Apache maven, a software project management tool
Apache maven, a software project management toolApache maven, a software project management tool
Apache maven, a software project management tool
 
Ci jenkins maven svn
Ci jenkins maven svnCi jenkins maven svn
Ci jenkins maven svn
 
Apache Maven
Apache MavenApache Maven
Apache Maven
 
Introduction to java
Introduction to java Introduction to java
Introduction to java
 
Introduction to maven
Introduction to mavenIntroduction to maven
Introduction to maven
 
Java, Eclipse, Maven & JSF tutorial
Java, Eclipse, Maven & JSF tutorialJava, Eclipse, Maven & JSF tutorial
Java, Eclipse, Maven & JSF tutorial
 
Maven in mulesoft
Maven in mulesoftMaven in mulesoft
Maven in mulesoft
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
 
Maven TestNg frame work (1) (1)
Maven TestNg frame work (1) (1)Maven TestNg frame work (1) (1)
Maven TestNg frame work (1) (1)
 
Session 2
Session 2Session 2
Session 2
 
Session 2
Session 2Session 2
Session 2
 
Maven Basics - Explained
Maven Basics - ExplainedMaven Basics - Explained
Maven Basics - Explained
 

Plus de KadarkaraiSelvam

Plus de KadarkaraiSelvam (9)

Selenium web driver useful commands
Selenium web driver useful commandsSelenium web driver useful commands
Selenium web driver useful commands
 
Java 1
Java 1Java 1
Java 1
 
Java selenium web driver
Java selenium web driverJava selenium web driver
Java selenium web driver
 
Selenium inputs
Selenium inputsSelenium inputs
Selenium inputs
 
Selenium TestNG
Selenium TestNGSelenium TestNG
Selenium TestNG
 
Java Inheritance and Polymorphism
Java Inheritance and PolymorphismJava Inheritance and Polymorphism
Java Inheritance and Polymorphism
 
Java Control Statements
Java Control StatementsJava Control Statements
Java Control Statements
 
Java variables and classes
Java variables and classesJava variables and classes
Java variables and classes
 
Selenium ide 1
Selenium ide 1Selenium ide 1
Selenium ide 1
 

Dernier

Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
UK Journal
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
UXDXConf
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
FIDO Alliance
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
panagenda
 

Dernier (20)

Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - Questionnaire
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 

Maven and versioning

  • 2. Building a Project ❖ Creating a Executable file from the Project files HelloWorld.java Java Compiler HelloWorld.class Java Project Java Compiler HelloWorld.jar
  • 3. Java Archive (JAR) ❖ JAR file is a compressed version of Class files ❖ JAR is a Package file contains ➢ Many JAVA Class Files (which is executable by JVM) ➢ Supporting configuration files (property files and other format data files) ➢ Resources such as text, image etc ➢ External Library files
  • 5. Version ● Each Software is subject to change or update its features For example, Initially a site can have signup with manual form. Then after a while, signup via google credentials is created. Then after a while, signup via other social media such as Facebook or linkedin will be created ● This changes in a software code is tracked as version
  • 6. Selenium, Driver other Versions ❖ Selenium WebDriver is about to release Version 4 and is on beta testing ❖ Version history of WebDriver Link ❖ Browser versions are upgrading always to meet security and features ❖ This changes driver versions ❖ Chrome version history Link
  • 7. Maven ❖ Powerful Project Management Tool for building a project ❖ Manage projects in various languages such as C#, Ruby and Scala, etc. ❖ Managing different dependencies with ease
  • 8. Maven Project Structure src/main/java directory includes the java source code deliverables src/test/java directory includes the Testing source code in which our code will be present resources directory includes the property files, images and other useful resources for this project target directory is the default output folder when the project is build or packaged
  • 9. Maven Environment Setup ❖ Maven is a Java Based tool and Requires JDK environment to setup ❖ Verify Java installation is present in the machine Java -version ❖ Download maven Archive link from https://maven.apache.org/download.cgi ❖ Extract the archive folder ❖ Set Maven Environment Variables in windows M2_HOME = C:Program Filesapache-maven-3.3.1 MAVEN_HOME = C:Program Filesapache-maven-3.3.1 MAVEN_OPTS = -Xms256m -Xmx512m
  • 10. Maven Environment Setup ❖ Add System variables in windows ❖ Add Bin to System variable path C:Program Filesapache-maven-3.3.1bin ❖ Verify Maven is installed mvn -version
  • 11. POM.xml ❖ Project Object Model is the core of maven ❖ It contains details to build the project ➢ Configurations ➢ Dependencies ➢ Plugins and Goals ➢ Build Profiles etc. ❖ Also contains information of project version, description, developers and mailing lists, etc.
  • 12. Initial POM ❖ Group Id : Generally it is a process or department name in which Project is used ❖ Artifact Id : Project name ❖ Version : Project Version
  • 13. Maven Build Life Cycles ❖ Build Life Cycle in Maven is a predefined set of execution instruction ❖ Any Build Life cycle majorly contains the following Instruction / phases in any order compile Source Code is compiled using the compiler. (e.g. javac) prepare-resources Customizing the resources to copy package JAR/WAR package creation as mentioned in POM.xml install Installs the package in a repository deploy copies the final package file to a desired location
  • 14. Some Maven Commands mvn clean ❖ It will delete the build directory. Target folder is the place all class files are stored mvn install ❖ Will pack the resources ❖ Will compile the java files ❖ Will pack the files to jar in maven directory
  • 15. Maven Repository ● Local Repository In our local system ● Remote Repository A shared space ● Central Repository - https://mvnrepository.com/
  • 16. Thank you For any Assistance kadarkarai@live.com +91-9578921178

Notes de l'éditeur

  1. This makes us difficult to update and build the project