SlideShare uma empresa Scribd logo
1 de 22
Building and Managing
Java Projects with Maven
Part-III
Property Processing
${project.home}/project.properties Project scope
properties
${project.home}/build.properties Properties
specific to each
build
${user.home}/build.properties Properties
specific to each
user
CLI –Dfoo=bar
The last definition wins
Sample build.properties:
…
bea.home=c:/bea81sp1
oracle.home=c:/oracle/ora9i
Build Process Design
Sample Service project components
Common data module
EJBs
Web Application
Data
(jar)
EJB
(jar)
Webapp
(war)
EAR
Subproject: service-data
sampleservice
–project.xml
–maven.xml
–application/
–service-data/
–project.xm
l
–maven.xml
–src/
–service-ejb/
–service-web/
–xdocs/
project.xml (POM)
<project>
<extend>../project.xml</extend>
<name>Sample Service Data
Module</name>
<id>sampleservice-data</id>
</project>
Note: POM can be inherited.
Subproject: service-data
sampleservice
–project.xml
–maven.xml
–application/
–service-data/
–project.xml
–maven.xml
–src/
–service-ejb/
–service-web/
–xdocs/
maven.xml (Goals)
<project default="build"
xmlns:j="jelly:core"
xmlns:maven="jelly:maven"
xmlns:ant="jelly:ant">
<goal name="build"
prereqs="jar:install"/>
</project>
Note: Goals can also be inherited
Make jar Local
Repo
Subproject: service-ejb
sampleservice
–project.xml
–maven.xml
–application/
–service-data/
–service-ejb/
–project.xm
l
–maven.xml
–src/
–service-web/
–xdocs/
project.xml (POM)
<project>
<extend>../project.xml</extend>
<name>Sample Service EJB</name>
<id>sampleservice-ejb</id>
<dependency>
<groupId>${pom.groupId}</groupId>
<artifactId>sampleservice-data</artifactId>
<version>${pom.currentVersion}</version>
<properties>
<ejb.manifest.classpath>true</ejb.manife
st.classpath>
</properties>
</dependency>
</project>
Local
Repo
xdoclet compile ws-gen ejb-jar
Subproject: service-ejb
Maven XDoclet Plugin
– Support all standard tags
– Automatically includes generated src dir in compilation src set
– Support util class generation
– Dependencies
– xdoclet-ejb-module-1.2
– xdoclet-web-module-1.2
– xdoclet-bea-module-1.2
(for WebLogic Server Deployment)
Note: Current version 1.2 does not work out-of-box (needed to fix the projec
Subproject: service-ejb
Maven XDoclet Plugin - Properties
## EJBDoclet
maven.xdoclet.ejbdoclet.fileset.0.include=**/ejb/**/*Bean.java
maven.xdoclet.ejbdoclet.ejbSpec=2.0
maven.xdoclet.ejbdoclet.verbose=true
maven.xdoclet.ejbdoclet.session.0=false
maven.xdoclet.ejbdoclet.localhomeinterface.0=true
maven.xdoclet.ejbdoclet.localinterface.0=true
maven.xdoclet.ejbdoclet.utilobject.0=true
## EJBDoclet WebLogic Nested Element
maven.xdoclet.ejbdoclet.weblogic.0=true
maven.xdoclet.ejbdoclet.weblogic.0.mergeDir=${src.dir}/ejbdoclet
maven.xdoclet.ejbdoclet.weblogic.0.destDir=${maven.xdoclet.ejbdoclet
.deploymentdescriptor.0.destDir}
Subproject: service-ejb
Web Services
– Currently Maven has no container specific plugins
<goal name="wsgen" prereqs="wsgen.autotype, wsgen.source2wsdd"/>
<goal name="wsgen.autotype">
<taskdef name="autotype"
classname="weblogic.ant.taskdefs.webservices.javaschema.JavaSchema"/>
….
</goal>
<goal name=“wsgen.source2wsdd”>
…
</goal> project.properties
## Web Services
maven.webservice.javaComponents=
com.myinc.sampleservice.ejb.BasicAccountInquiry,
com.myinc.sampleservice.ejb.ExpandedAccountInquiry,
com.myinc.sampleservice.ejb.DetailedAccountInquiry
maven.webservice.autotype.package=com.myinc.sampleservice.autotype
maven.webservice.autotype.keepgenerated=false
Use tag:
@wlws
Subproject: service-ejb
sampleservice
–project.xml
–maven.xml
–application/
–service-data/
–service-ejb/
–project.xml
–maven.xml
–src/
–service-web/
–xdocs/
Maven EJB Plugin
– Currently no container specific ejb-jar
<goal name="ejbjar" prereqs="java:compile">
<path id="ejb.classpath">
<pathelement location="${maven.build.dest}"/>
<path refid="maven.dependency.classpath"/>
</path>
<j:set var="maven.ejb.descriptordir"
value="${pom.getPluginContext('maven-xdoclet-plugin')…./>
<ejbjar srcdir="${maven.build.dest}"
descriptordir="${maven.ejb.descriptordir}"
flatdestdir="true"
basejarname="${pom.artifactId}-${pom.currentVersion}">
<classpath refid="ejb.classpath"/>
<weblogic destdir="${maven.build.dir}“newCMP="true"
outputdir="${maven.build.dir}/ejb" rebuild="false"
ejbcclass="weblogic.ejbc"
</weblogic>
…
Subproject: service-ejb
sampleservice
–project.xml
–maven.xml
–application/
–service-data/
–service-ejb/
–project.xml
–maven.xml
–src/
–service-web/
–xdocs/
Making the Final EJB Jar
<project default="build“>
<goal name="build" prereqs="ejb:install"/>
<preGoal name="java:compile">
<attainGoal name="xdoclet:ejbdoclet"/>
</preGoal>
<postGoal name="java:compile">
<attainGoal name="wsgen"/>
<attainGoal name="java:jar-resources"/>
</postGoal>
<preGoal name="ejb:ejb">
<attainGoal name="ejbjar"/>
</preGoal>
<postGoal name="ejb:install">
<artifact:install
artifact="${maven.build.dir}/${pom.artifactId}-${pom.currentVersion}.xml"
type="xml“ project="${pom}"/>
</postGoal>
Subproject: service-web
sampleservice
–project.xml
–maven.xml
–application/
–service-data/
–service-ejb/
–service-web/
–project.xm
l
–maven.xml
–src/
–xdocs/
project.xml (POM)
<project>
<extend>../project.xml</extend>
<name>Sample Service Web Application</name>
<id>sampleservice-web</id>
…
<dependency>
<groupId>${pom.groupId}</groupId>
<artifactId>sampleservice-data</artifactId>
<version>${pom.currentVersion}</version>
</dependency>
<dependency>
<groupId>${pom.groupId}</groupId>
<artifactId>sampleservice-ejb</artifactId>
<version>${pom.currentVersion}</version>
<type>ejb</type>
<properties>
<web-service>true</web-service>
</properties>
</dependency>
custom
property
Subproject: service-web
maven.xml (goals)
<project default=“build”>
<goal name="build" prereqs="war:install"/>
<preGoal name="war:war">
<j:forEach var="dep" items="${pom.dependencies}">
<j:if test="${dep.getProperty('web-service')=='true'}">
<util:file var="xmlFile"
name="${maven.repo.local}/${dep.groupId}/xmls/${dep.artifactId}-
${dep.version}.xml"/>
<j:if test="${xmlFile.exists()}">
<x:parse var="xml" xml="${xmlFile}"/>
<x:forEach var="node" select="$xml/*/*">
<j:set var="temp" value="${root.add(node.detach())}"/>
</x:forEach>
</j:if>
</j:if>
</j:forEach>
<j:if test="${!root.elements().isEmpty()}">
<!– output the “web-services.xml” -->
</j:if>
</preGoal>
preGoal is
used to generate
web services DD
file if defined
Subproject: application
sampleservice
–project.xml
–maven.xml
–application/
–project.xm
l
–maven.xml
–src/
–service-data/
–service-ejb/
–service-web/
EAR Packaging
<project>
<extend>../project.xml</extend>
<name>Sample Service Application</name>
<id>sampleservice</id>
<!-- Data Component -->
<dependency>
<groupId>${pom.groupId}</groupId>
<artifactId>sampleservice-data</artifactId>
<version>${pom.currentVersion}</version>
<type>jar</type>
<properties>
<ear.bundle>true</ear.bundle>
</properties>
</dependency>
<!-- EJB Component -->
<dependency>
<groupId>${pom.groupId}</groupId>
<artifactId>sampleservice-ejb</artifactId>
<version>${pom.currentVersion}</version>
<type>ejb</type>
<properties>
<ear.bundle>true</ear.bundle>
</properties>
</dependency>
<!-- WAR Component -->
<dependency>
<groupId>${pom.groupId}</groupId>
<artifactId>sampleservice-web</artifactId>
<version>${pom.currentVersion}</version>
<type>war</type>
<properties>
<ear.bundle>true</ear.bundle>
<ear.appxml.war.context-root>
/${pom.artifactId}
</ear.appxml.war.context-root>
</properties>
</dependency>
Subproject: application
sampleservice
–project.xml
–maven.xml
–application/
–project.xml
–maven.xml
–src/
–service-data/
–service-ejb/
–service-web/
–xdocs/
EAR Packaging
<project default=“build”>
<goal name="build" prereqs="ear"/>
<preGoal name="ear:generate-ear-
descriptor"> <mkdir
dir="${maven.ear.appxml.dir}"/>
</preGoal>
</project>project.properties
…
## Ear related
maven.ear.appxml.dir = ${maven.build.dir}/application/META-INF
maven.ear.appxml = ${maven.ear.appxml.dir}/application.xml
maven.ear.appxml.generate = true
Tip: container specific DD files can be stored at src/application/META-INF
Putting It Together: Reactor
<goal name="build">
<maven:reactor
basedir="${basedir}"
postProcessing="true"
includes="*/project.xml"
excludes=""
goals="build"
banner="Building"
ignoreFailures="false"/>
</goal>
…
sampleservice
–project.xml
–maven.xml
–application/
–service-data/
–service-ejb/
–service-web/
–xdocs/
<project default=“build”
xmlns:j="jelly:core"
xmlns:maven="jelly:maven"
xmlns:ant="jelly:ant">
….
Putting It Together: Reactor
/c/dev/sampleservice/>maven
__ __
| / |__ _Apache__ ___
| |/| / _`  V / -_) '  ~ intelligent projects ~
|_| |___,_|_/___|_||_| v. 1.0-rc1-SNAPSHOT
Starting the reactor...
Our processing order:
Sample Service Data Module
Sample Service EJB
Sample Service Web Application
Sample Service Application
+----------------------------------------
| Building Sample Service Data Module
| Memory: 3M/4M
+----------------------------------------
build:
java:prepare-filesystem:
[mkdir] Created dir: C:devsampleserviceservice-datatargetclasses
java:compile:
….
Customizing Maven
• Override plugin properties in
– project.properties
– build.properties
• Use maven.xml
– Override plugin goals
– Intercept plugin goals with <preGoal/>
and <postGoal/>
• Write you own plugin
– In Java, Jelly, or other scripting language.
Real Life Maven
• Single artifact per project
– Can be tweaked to deliver multiple artifacts
as long as no type conflicts
– Fine-grained design
• Project Migration/Mavenizing
– Can co-exist with ant
– May require different directory structure
• Too Slow?
– Use console plugin
• Are you ready for maven?
– Culture change
Summary
• Pros
– Work out-of-box for standard projects
– Build assets highly reusable, thanks to
core/plugin architecture
– Build rules are more dynamic
– Best suited for project integration
– IDE friendly
• Cons
– Incomplete documentation
– Missing convenience details
– Not yet mature. Still waiting for the R1.
Get More
• http://maven.apache.org
• http://www.onjava.com/pub/a/onjava/2003/10/22/maven.html
• http://www-106.ibm.com/developerworks/java/library/j-maven
• http://www.javausergroup.at/events/maven.pdf
• http://www.theserverside.com/articles/article.jsp?l=MavenMagi
c
• http://blogs.codehaus.org/people/vmassol/archives/000080.ht
ml
• http://www.javaworld.com/javaworld/jw-10-2002/jw-1011-
maven.html
Questions

Mais conteúdo relacionado

Mais procurados

Webtests Reloaded - Webtest with Selenium, TestNG, Groovy and Maven
Webtests Reloaded - Webtest with Selenium, TestNG, Groovy and MavenWebtests Reloaded - Webtest with Selenium, TestNG, Groovy and Maven
Webtests Reloaded - Webtest with Selenium, TestNG, Groovy and MavenThorsten Kamann
 
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010Arun Gupta
 
Magento Live Australia 2016: Request Flow
Magento Live Australia 2016: Request FlowMagento Live Australia 2016: Request Flow
Magento Live Australia 2016: Request FlowVrann Tulika
 
AngularJS vs. Ember.js vs. Backbone.js
AngularJS vs. Ember.js vs. Backbone.jsAngularJS vs. Ember.js vs. Backbone.js
AngularJS vs. Ember.js vs. Backbone.jsMark
 
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0Arun Gupta
 
Simple module Development in Joomla! 2.5
Simple module Development in Joomla! 2.5Simple module Development in Joomla! 2.5
Simple module Development in Joomla! 2.5Vishwash Gaur
 
Building and Managing Projects with Maven
Building and Managing Projects with MavenBuilding and Managing Projects with Maven
Building and Managing Projects with MavenKhan625
 
Migrate yourself. code -> module -> mind
Migrate yourself. code -> module -> mindMigrate yourself. code -> module -> mind
Migrate yourself. code -> module -> mindValentine Matsveiko
 
Jsf2 composite-components
Jsf2 composite-componentsJsf2 composite-components
Jsf2 composite-componentsvinaysbk
 
Layouts and Rendering in Rails, Season 2
Layouts and Rendering in Rails, Season 2Layouts and Rendering in Rails, Season 2
Layouts and Rendering in Rails, Season 2RORLAB
 
feature flagging with rails engines v0.2
feature flagging with rails engines v0.2 feature flagging with rails engines v0.2
feature flagging with rails engines v0.2 Enrico Teotti
 
Ajax Tags Advanced
Ajax Tags AdvancedAjax Tags Advanced
Ajax Tags AdvancedAkramWaseem
 

Mais procurados (18)

Webtests Reloaded - Webtest with Selenium, TestNG, Groovy and Maven
Webtests Reloaded - Webtest with Selenium, TestNG, Groovy and MavenWebtests Reloaded - Webtest with Selenium, TestNG, Groovy and Maven
Webtests Reloaded - Webtest with Selenium, TestNG, Groovy and Maven
 
实战Ecos
实战Ecos实战Ecos
实战Ecos
 
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
 
Magento Live Australia 2016: Request Flow
Magento Live Australia 2016: Request FlowMagento Live Australia 2016: Request Flow
Magento Live Australia 2016: Request Flow
 
Advanced Visualforce Webinar
Advanced Visualforce WebinarAdvanced Visualforce Webinar
Advanced Visualforce Webinar
 
AngularJS vs. Ember.js vs. Backbone.js
AngularJS vs. Ember.js vs. Backbone.jsAngularJS vs. Ember.js vs. Backbone.js
AngularJS vs. Ember.js vs. Backbone.js
 
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
 
Os Haase
Os HaaseOs Haase
Os Haase
 
JSF 2.0 Preview
JSF 2.0 PreviewJSF 2.0 Preview
JSF 2.0 Preview
 
Simple module Development in Joomla! 2.5
Simple module Development in Joomla! 2.5Simple module Development in Joomla! 2.5
Simple module Development in Joomla! 2.5
 
Building and Managing Projects with Maven
Building and Managing Projects with MavenBuilding and Managing Projects with Maven
Building and Managing Projects with Maven
 
Maven II
Maven IIMaven II
Maven II
 
Migrate yourself. code -> module -> mind
Migrate yourself. code -> module -> mindMigrate yourself. code -> module -> mind
Migrate yourself. code -> module -> mind
 
Jsf2 composite-components
Jsf2 composite-componentsJsf2 composite-components
Jsf2 composite-components
 
Layouts and Rendering in Rails, Season 2
Layouts and Rendering in Rails, Season 2Layouts and Rendering in Rails, Season 2
Layouts and Rendering in Rails, Season 2
 
feature flagging with rails engines v0.2
feature flagging with rails engines v0.2 feature flagging with rails engines v0.2
feature flagging with rails engines v0.2
 
Ajax Tags Advanced
Ajax Tags AdvancedAjax Tags Advanced
Ajax Tags Advanced
 
Resthub lyonjug
Resthub lyonjugResthub lyonjug
Resthub lyonjug
 

Destaque

Caching and invalidating with managed store
Caching and invalidating with managed storeCaching and invalidating with managed store
Caching and invalidating with managed storeHasan Syed
 
Prévia da inflação de setembro no Brasil
Prévia da inflação de setembro no BrasilPrévia da inflação de setembro no Brasil
Prévia da inflação de setembro no BrasilRafael Carvalheira
 
Shamal Solutions resume
Shamal Solutions resumeShamal Solutions resume
Shamal Solutions resumeJeff Severson
 
Moss-Adams_2012-Corp-Social-Responsibility-Report
Moss-Adams_2012-Corp-Social-Responsibility-ReportMoss-Adams_2012-Corp-Social-Responsibility-Report
Moss-Adams_2012-Corp-Social-Responsibility-ReportJohn Witt
 
Catalogo Nolo And Service - Noleggio Attrezzatura industriale
Catalogo Nolo And Service - Noleggio Attrezzatura industrialeCatalogo Nolo And Service - Noleggio Attrezzatura industriale
Catalogo Nolo And Service - Noleggio Attrezzatura industrialeopus automazione spa
 

Destaque (10)

VenkataMaheswari_Resume
VenkataMaheswari_ResumeVenkataMaheswari_Resume
VenkataMaheswari_Resume
 
Caching and invalidating with managed store
Caching and invalidating with managed storeCaching and invalidating with managed store
Caching and invalidating with managed store
 
Xslt in mule
Xslt in muleXslt in mule
Xslt in mule
 
Graphic Portfolio
Graphic PortfolioGraphic Portfolio
Graphic Portfolio
 
Prévia da inflação de setembro no Brasil
Prévia da inflação de setembro no BrasilPrévia da inflação de setembro no Brasil
Prévia da inflação de setembro no Brasil
 
Shamal Solutions resume
Shamal Solutions resumeShamal Solutions resume
Shamal Solutions resume
 
FINAL REPORT-reduced
FINAL REPORT-reducedFINAL REPORT-reduced
FINAL REPORT-reduced
 
Moss-Adams_2012-Corp-Social-Responsibility-Report
Moss-Adams_2012-Corp-Social-Responsibility-ReportMoss-Adams_2012-Corp-Social-Responsibility-Report
Moss-Adams_2012-Corp-Social-Responsibility-Report
 
Catalogo Nolo And Service - Noleggio Attrezzatura industriale
Catalogo Nolo And Service - Noleggio Attrezzatura industrialeCatalogo Nolo And Service - Noleggio Attrezzatura industriale
Catalogo Nolo And Service - Noleggio Attrezzatura industriale
 
World Day of Prayer - Cuba
World Day of Prayer - CubaWorld Day of Prayer - Cuba
World Day of Prayer - Cuba
 

Semelhante a Building and Managing Java Projects with Maven Part-III

Semelhante a Building and Managing Java Projects with Maven Part-III (20)

Maven
MavenMaven
Maven
 
Maven
MavenMaven
Maven
 
Maven in Mule
Maven in MuleMaven in Mule
Maven in Mule
 
Maven
MavenMaven
Maven
 
Maven introduction in Mule
Maven introduction in MuleMaven introduction in Mule
Maven introduction in Mule
 
Maven part 2
Maven part 2Maven part 2
Maven part 2
 
Maven ii
Maven iiMaven ii
Maven ii
 
Maven ii
Maven iiMaven ii
Maven ii
 
Jsf
JsfJsf
Jsf
 
The Rails Way
The Rails WayThe Rails Way
The Rails Way
 
Play vs Rails
Play vs RailsPlay vs Rails
Play vs Rails
 
Redmine Betabeers SVQ
Redmine Betabeers SVQRedmine Betabeers SVQ
Redmine Betabeers SVQ
 
Summit2014 topic 0153 - Alfresco Maven for shared properties
Summit2014 topic 0153 - Alfresco Maven for shared propertiesSummit2014 topic 0153 - Alfresco Maven for shared properties
Summit2014 topic 0153 - Alfresco Maven for shared properties
 
Oaf development-guide
Oaf development-guideOaf development-guide
Oaf development-guide
 
Rails 3 overview
Rails 3 overviewRails 3 overview
Rails 3 overview
 
Rails 3: Dashing to the Finish
Rails 3: Dashing to the FinishRails 3: Dashing to the Finish
Rails 3: Dashing to the Finish
 
Ajax, JSF, Facelets, Eclipse & Maven tutorials
Ajax, JSF, Facelets, Eclipse & Maven tutorialsAjax, JSF, Facelets, Eclipse & Maven tutorials
Ajax, JSF, Facelets, Eclipse & Maven tutorials
 
Spring into rails
Spring into railsSpring into rails
Spring into rails
 
Web applications with Catalyst
Web applications with CatalystWeb applications with Catalyst
Web applications with Catalyst
 
intellimeet
intellimeetintellimeet
intellimeet
 

Mais de Hasan Syed

Web service vm in mule
Web service vm in muleWeb service vm in mule
Web service vm in muleHasan Syed
 
Validate soap request in mule
Validate soap request in muleValidate soap request in mule
Validate soap request in muleHasan Syed
 
Simple web service vm
Simple web service vmSimple web service vm
Simple web service vmHasan Syed
 
Scatter gather flow control
Scatter gather flow controlScatter gather flow control
Scatter gather flow controlHasan Syed
 
Mule with velocity
Mule with velocityMule with velocity
Mule with velocityHasan Syed
 
Mule with rabbit mq
Mule with rabbit mqMule with rabbit mq
Mule with rabbit mqHasan Syed
 
Mule with quartz
Mule with quartzMule with quartz
Mule with quartzHasan Syed
 
Mule with drools
Mule with droolsMule with drools
Mule with droolsHasan Syed
 
Idempotent filter with simple file
Idempotent filter with simple fileIdempotent filter with simple file
Idempotent filter with simple fileHasan Syed
 
Groovy with mule
Groovy with muleGroovy with mule
Groovy with muleHasan Syed
 
Creating dynamic json
Creating dynamic jsonCreating dynamic json
Creating dynamic jsonHasan Syed
 
Converting with custom transformer
Converting with custom transformerConverting with custom transformer
Converting with custom transformerHasan Syed
 
Cache for community edition
Cache for community editionCache for community edition
Cache for community editionHasan Syed
 
Automatic documentation with mule
Automatic documentation with muleAutomatic documentation with mule
Automatic documentation with muleHasan Syed
 

Mais de Hasan Syed (19)

Web service vm in mule
Web service vm in muleWeb service vm in mule
Web service vm in mule
 
Validate soap request in mule
Validate soap request in muleValidate soap request in mule
Validate soap request in mule
 
Simple web service vm
Simple web service vmSimple web service vm
Simple web service vm
 
Scatter gather flow control
Scatter gather flow controlScatter gather flow control
Scatter gather flow control
 
Mule with velocity
Mule with velocityMule with velocity
Mule with velocity
 
Mule with rabbit mq
Mule with rabbit mqMule with rabbit mq
Mule with rabbit mq
 
Mule with quartz
Mule with quartzMule with quartz
Mule with quartz
 
Mule with drools
Mule with droolsMule with drools
Mule with drools
 
Mule esb
Mule esbMule esb
Mule esb
 
Maven part 1
Maven part 1Maven part 1
Maven part 1
 
Jenkins3
Jenkins3Jenkins3
Jenkins3
 
Jenkins2
Jenkins2Jenkins2
Jenkins2
 
Jenkins
JenkinsJenkins
Jenkins
 
Idempotent filter with simple file
Idempotent filter with simple fileIdempotent filter with simple file
Idempotent filter with simple file
 
Groovy with mule
Groovy with muleGroovy with mule
Groovy with mule
 
Creating dynamic json
Creating dynamic jsonCreating dynamic json
Creating dynamic json
 
Converting with custom transformer
Converting with custom transformerConverting with custom transformer
Converting with custom transformer
 
Cache for community edition
Cache for community editionCache for community edition
Cache for community edition
 
Automatic documentation with mule
Automatic documentation with muleAutomatic documentation with mule
Automatic documentation with mule
 

Último

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 

Último (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 

Building and Managing Java Projects with Maven Part-III