SlideShare a Scribd company logo
06/03/09 HUGE   /  ParentsConnect  / HUGE 45 Main Street, 2nd Floor NY NY 11201 718.625.4843 www.hugeinc.com step-by-step guide Ant Build Tool May 22nd, 2008
Introduction Ant is a  Java-based build tool .  It is kind of  like Make , without Make's wrinkles and with the  full portability  of pure Java code. HUGE   /  Ant
Prerequisites  apache ant  ( http://ant.apache.org/ ) yui compressor  ( http://developer.yahoo.com/yui/compressor/ ) yui compressor ant task  ( http://code.google.com/p/javaflight-code/ ) HUGE   /  Ant
Installation download ant binary files, uncompress it, and add bin folder to system path download yahoo compressor and copy yuicompressor-x.x.x.jar to ant’s lib folder download yahoo compressor ant task and copy yui-compressor-ant-taks-x.x.jar to ant’s lib folder HUGE   /  Ant
Folder Structure trunk/deploy /wwwroot /css /js /img /inc build.xml /wwwroot-compressed HUGE   /  Ant
1. Build Script <project name=“HUGE&quot; default=&quot;build&quot; basedir=&quot;.&quot;> <taskdef name=&quot;yui-compressor&quot; classname=&quot;net.noha.tools.ant.yuicompressor.tasks.YuiCompressorTask&quot;></taskdef> <property name=&quot;src&quot; location=&quot; wwwroot &quot;/> <property name=&quot;build&quot; location=&quot; wwwroot-compressed &quot;/> ... </project> HUGE   /  Ant
2. Build Script <target name=&quot;build&quot; description=&quot;generate the distribution&quot;> … </target> HUGE   /  Ant
3. Build Script <target name=&quot;compress&quot; depends=&quot;build&quot; description=&quot;compress javascript and css&quot;> … </target> HUGE   /  Ant
4. Build Script (clean target) <target name=&quot;clean&quot; description=&quot;clean up&quot;> <delete dir=&quot;${build}&quot;> <include name=&quot;**/*&quot;/> </delete> </target> HUGE   /  Ant
5. Build Script (build target) <copy todir=&quot;${build}&quot;> <fileset dir=&quot;${src}&quot; excludes=&quot;css/global/,css/weeks/,js/global/,js/weeks/&quot; /> </copy> <concat destfile=&quot;${build}/js/min/weeks.js&quot;> <fileset dir=&quot;${src}/js/global/&quot;/> <fileset dir=&quot;${src}/js/weeks/&quot;/> </concat> <concat destfile=&quot;${build}/css/min/weeks.css&quot;> <fileset dir=&quot;${src}/css/global/&quot;/> <fileset dir=&quot;${src}/css/weeks/&quot;/> </concat> HUGE   /  Ant
6. Build Script (build target) <move file=&quot;${build}/inc/weeks/ head-css-min.jsp &quot;  tofile=&quot;${build}/inc/weeks/ head-css.jsp &quot;/> <move file=&quot;${build}/inc/weeks/ head-js-min.jsp &quot;  tofile=&quot;${build}/inc/weeks/ head-js.jsp &quot;/> HUGE   /  Ant
7. Build Script (head-css) <%@ include file=&quot;inc/weeks/head-css.jsp&quot; %> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/01-reset.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/02-font.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/03-global.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/box.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/footer.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/header.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/min/weeks.css&quot; /> (head-css-min.jsp) HUGE   /  Ant
8. Build Script (head-js) <%@ include file=&quot;inc/weeks/head-js.jsp&quot; %> <script type=&quot;text/javascript&quot; src=&quot;js/global/0_jquery-1.2.4.min.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;js/weeks/0_ui.core.min.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;js/weeks/1_ui.accordion.min.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;js/weeks/2_ui.tabs.min.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;js/min/weeks.js&quot;></script> (head-js-min.jsp) HUGE   /  Ant
9. Build Script (compress target) <mkdir dir=&quot; ${build}/js/compress &quot;/> <yui-compressor  warn=&quot;false“ munge=&quot;true“  jsSuffix=&quot;.js“  preserveallsemicolons=&quot;false“  fromdir=&quot; ${build}/js &quot; todir=&quot; ${build}/js/compress &quot;> </yui-compressor> <copy todir=&quot; ${build}/js &quot;> <fileset dir=&quot; ${build}/js/compress &quot;/> </copy> <delete dir=&quot; ${build}/js/compress &quot;/> HUGE   /  Ant
10. Build Script (compress target) <mkdir dir=&quot; ${build}/css/compress &quot;/> <yui-compressor warn=&quot;false” munge=&quot;true“  cssSuffix=&quot;.css&quot;   fromdir=&quot; ${build}/css “ todir=&quot; ${build}/css/compress &quot;> </yui-compressor> <copy todir=&quot; ${build}/css &quot;> <fileset dir=&quot; ${build}/css/compress &quot;/> </copy> <delete dir=&quot; ${build}/css/compress &quot;/> HUGE   /  Ant
Build Sucessfull HUGE   /  Ant
Ad

More Related Content

What's hot (19)

Access youtube in china! china worldchat
Access youtube in china!   china worldchatAccess youtube in china!   china worldchat
Access youtube in china! china worldchat
榴梿 坊林
 
backlink
backlinkbacklink
backlink
formatrod69
 
Submitting Your First Plugin to WordPress.org
Submitting Your First Plugin to WordPress.orgSubmitting Your First Plugin to WordPress.org
Submitting Your First Plugin to WordPress.org
Linchpin
 
Git inter-snapshot public
Git  inter-snapshot publicGit  inter-snapshot public
Git inter-snapshot public
SeongJae Park
 
Best of the EdTech Web 2010 - With Links
Best of the EdTech Web 2010 - With LinksBest of the EdTech Web 2010 - With Links
Best of the EdTech Web 2010 - With Links
Richard Byrne
 
The page and the desktop
The page and the desktopThe page and the desktop
The page and the desktop
Glenn Jones
 
FP in JS-Land
FP in JS-LandFP in JS-Land
FP in JS-Land
Robert Pearce
 
Search videos with youtube api3
Search videos with youtube api3Search videos with youtube api3
Search videos with youtube api3
phanhung20
 
MIDI is Staging a Comeback... In Your Browser!
MIDI is Staging a Comeback... In Your Browser!MIDI is Staging a Comeback... In Your Browser!
MIDI is Staging a Comeback... In Your Browser!
Jean-Philippe Côté
 
Growing pains - PosKeyErrors and other malaises
Growing pains - PosKeyErrors and other malaisesGrowing pains - PosKeyErrors and other malaises
Growing pains - PosKeyErrors and other malaises
Philip Bauer
 
How I built the demo's
How I built the demo'sHow I built the demo's
How I built the demo's
Glenn Jones
 
Zotero Visualisierungen
Zotero VisualisierungenZotero Visualisierungen
Zotero Visualisierungen
Adrian Wilke
 
Armorizing applications
Armorizing applicationsArmorizing applications
Armorizing applications
Iftach Ian Amit
 
Global_Shopping_Online
Global_Shopping_OnlineGlobal_Shopping_Online
Global_Shopping_Online
drocallaghan
 
Global_Shopping_Online
Global_Shopping_OnlineGlobal_Shopping_Online
Global_Shopping_Online
drocallaghan
 
Global_Shopping_Online
Global_Shopping_OnlineGlobal_Shopping_Online
Global_Shopping_Online
drocallaghan
 
Global_Shopping_Online
Global_Shopping_OnlineGlobal_Shopping_Online
Global_Shopping_Online
drocallaghan
 
iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...
iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...
iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...
Rudy Jahchan
 
Re-using social media data
Re-using social media dataRe-using social media data
Re-using social media data
Glenn Jones
 
Access youtube in china! china worldchat
Access youtube in china!   china worldchatAccess youtube in china!   china worldchat
Access youtube in china! china worldchat
榴梿 坊林
 
Submitting Your First Plugin to WordPress.org
Submitting Your First Plugin to WordPress.orgSubmitting Your First Plugin to WordPress.org
Submitting Your First Plugin to WordPress.org
Linchpin
 
Git inter-snapshot public
Git  inter-snapshot publicGit  inter-snapshot public
Git inter-snapshot public
SeongJae Park
 
Best of the EdTech Web 2010 - With Links
Best of the EdTech Web 2010 - With LinksBest of the EdTech Web 2010 - With Links
Best of the EdTech Web 2010 - With Links
Richard Byrne
 
The page and the desktop
The page and the desktopThe page and the desktop
The page and the desktop
Glenn Jones
 
Search videos with youtube api3
Search videos with youtube api3Search videos with youtube api3
Search videos with youtube api3
phanhung20
 
MIDI is Staging a Comeback... In Your Browser!
MIDI is Staging a Comeback... In Your Browser!MIDI is Staging a Comeback... In Your Browser!
MIDI is Staging a Comeback... In Your Browser!
Jean-Philippe Côté
 
Growing pains - PosKeyErrors and other malaises
Growing pains - PosKeyErrors and other malaisesGrowing pains - PosKeyErrors and other malaises
Growing pains - PosKeyErrors and other malaises
Philip Bauer
 
How I built the demo's
How I built the demo'sHow I built the demo's
How I built the demo's
Glenn Jones
 
Zotero Visualisierungen
Zotero VisualisierungenZotero Visualisierungen
Zotero Visualisierungen
Adrian Wilke
 
Global_Shopping_Online
Global_Shopping_OnlineGlobal_Shopping_Online
Global_Shopping_Online
drocallaghan
 
Global_Shopping_Online
Global_Shopping_OnlineGlobal_Shopping_Online
Global_Shopping_Online
drocallaghan
 
Global_Shopping_Online
Global_Shopping_OnlineGlobal_Shopping_Online
Global_Shopping_Online
drocallaghan
 
Global_Shopping_Online
Global_Shopping_OnlineGlobal_Shopping_Online
Global_Shopping_Online
drocallaghan
 
iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...
iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...
iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...
Rudy Jahchan
 
Re-using social media data
Re-using social media dataRe-using social media data
Re-using social media data
Glenn Jones
 

Viewers also liked (17)

HUGE Mobile Tests
HUGE Mobile TestsHUGE Mobile Tests
HUGE Mobile Tests
Rafael Mumme
 
Narmada riparian
Narmada riparianNarmada riparian
Narmada riparian
Vipin Vyas
 
The Prettiest Women In Todays Fine Art 1202274793358929 2
The Prettiest Women In Todays Fine Art 1202274793358929 2The Prettiest Women In Todays Fine Art 1202274793358929 2
The Prettiest Women In Todays Fine Art 1202274793358929 2
batukdonga
 
Forms standards
Forms standardsForms standards
Forms standards
Rafael Mumme
 
Lady In Red 1205845422839996 4
Lady In Red 1205845422839996 4Lady In Red 1205845422839996 4
Lady In Red 1205845422839996 4
batukdonga
 
Monetizing blogs effectively
Monetizing blogs effectivelyMonetizing blogs effectively
Monetizing blogs effectively
delhibloggers
 
Para Ti Mi Amiguita Paulette
Para Ti Mi Amiguita PaulettePara Ti Mi Amiguita Paulette
Para Ti Mi Amiguita Paulette
guest316376
 
New Browsers
New BrowsersNew Browsers
New Browsers
Rafael Mumme
 
Holly Huntley Executive Coach
Holly Huntley Executive CoachHolly Huntley Executive Coach
Holly Huntley Executive Coach
Holly Huntley
 
Google Maps API
Google Maps APIGoogle Maps API
Google Maps API
Rafael Mumme
 
Poze In Doi
Poze In DoiPoze In Doi
Poze In Doi
guest90d645
 
Network Effect
Network EffectNetwork Effect
Network Effect
delhibloggers
 
Microformats
MicroformatsMicroformats
Microformats
Rafael Mumme
 
Again Funny 1205970537402857 5
Again Funny 1205970537402857 5Again Funny 1205970537402857 5
Again Funny 1205970537402857 5
batukdonga
 
대리운전 어플 랭킹
대리운전 어플 랭킹대리운전 어플 랭킹
대리운전 어플 랭킹
Jason Goo
 
4 Ways to Make Your PowerPoint Presentation Unique
4 Ways to Make Your PowerPoint Presentation Unique4 Ways to Make Your PowerPoint Presentation Unique
4 Ways to Make Your PowerPoint Presentation Unique
Joel Heffner
 
20170118 Presentatie 'Overleven in een wereld van fintechs v1.0'
20170118 Presentatie 'Overleven in een wereld van fintechs v1.0' 20170118 Presentatie 'Overleven in een wereld van fintechs v1.0'
20170118 Presentatie 'Overleven in een wereld van fintechs v1.0'
Pascal Spelier
 
Narmada riparian
Narmada riparianNarmada riparian
Narmada riparian
Vipin Vyas
 
The Prettiest Women In Todays Fine Art 1202274793358929 2
The Prettiest Women In Todays Fine Art 1202274793358929 2The Prettiest Women In Todays Fine Art 1202274793358929 2
The Prettiest Women In Todays Fine Art 1202274793358929 2
batukdonga
 
Lady In Red 1205845422839996 4
Lady In Red 1205845422839996 4Lady In Red 1205845422839996 4
Lady In Red 1205845422839996 4
batukdonga
 
Monetizing blogs effectively
Monetizing blogs effectivelyMonetizing blogs effectively
Monetizing blogs effectively
delhibloggers
 
Para Ti Mi Amiguita Paulette
Para Ti Mi Amiguita PaulettePara Ti Mi Amiguita Paulette
Para Ti Mi Amiguita Paulette
guest316376
 
Holly Huntley Executive Coach
Holly Huntley Executive CoachHolly Huntley Executive Coach
Holly Huntley Executive Coach
Holly Huntley
 
Again Funny 1205970537402857 5
Again Funny 1205970537402857 5Again Funny 1205970537402857 5
Again Funny 1205970537402857 5
batukdonga
 
대리운전 어플 랭킹
대리운전 어플 랭킹대리운전 어플 랭킹
대리운전 어플 랭킹
Jason Goo
 
4 Ways to Make Your PowerPoint Presentation Unique
4 Ways to Make Your PowerPoint Presentation Unique4 Ways to Make Your PowerPoint Presentation Unique
4 Ways to Make Your PowerPoint Presentation Unique
Joel Heffner
 
20170118 Presentatie 'Overleven in een wereld van fintechs v1.0'
20170118 Presentatie 'Overleven in een wereld van fintechs v1.0' 20170118 Presentatie 'Overleven in een wereld van fintechs v1.0'
20170118 Presentatie 'Overleven in een wereld van fintechs v1.0'
Pascal Spelier
 
Ad

Similar to Ant Build Tool (20)

Demystifying Maven
Demystifying MavenDemystifying Maven
Demystifying Maven
Mike Desjardins
 
Apache Ant
Apache AntApache Ant
Apache Ant
hussulinux
 
Deploy Flex with Apache Ant
Deploy Flex with Apache AntDeploy Flex with Apache Ant
Deploy Flex with Apache Ant
dctrl — studio for creativ technology
 
Ant User Guide
Ant User GuideAnt User Guide
Ant User Guide
Muthuselvam RS
 
Ant - Another Neat Tool
Ant - Another Neat ToolAnt - Another Neat Tool
Ant - Another Neat Tool
Kanika2885
 
Ant - Another Neat Tool
Ant - Another Neat ToolAnt - Another Neat Tool
Ant - Another Neat Tool
Kanika2885
 
Ant
Ant Ant
Ant
sundar22in
 
Introduction To Ant1
Introduction To  Ant1Introduction To  Ant1
Introduction To Ant1
Rajesh Kumar
 
Maven 2.0 - Improve your build patterns
Maven 2.0 - Improve your build patternsMaven 2.0 - Improve your build patterns
Maven 2.0 - Improve your build patterns
elliando dias
 
Slides Aquarium Paris 2008
Slides Aquarium Paris 2008Slides Aquarium Paris 2008
Slides Aquarium Paris 2008
julien.ponge
 
API Doc Smackdown
API Doc SmackdownAPI Doc Smackdown
API Doc Smackdown
Ted Husted
 
Front End Website Optimization
Front End Website OptimizationFront End Website Optimization
Front End Website Optimization
Gerard Sychay
 
Selenium RC Automation testing
Selenium RC Automation testingSelenium RC Automation testing
Selenium RC Automation testing
Anand Sharma
 
Shifting Gears
Shifting GearsShifting Gears
Shifting Gears
Christian Heilmann
 
Introduction To Ant
Introduction To AntIntroduction To Ant
Introduction To Ant
Rajesh Kumar
 
Clustering Made Easier: Using Terracotta with Hibernate and/or EHCache
Clustering Made Easier: Using Terracotta with Hibernate and/or EHCacheClustering Made Easier: Using Terracotta with Hibernate and/or EHCache
Clustering Made Easier: Using Terracotta with Hibernate and/or EHCache
Cris Holdorph
 
Creating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTPCreating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTP
nsandonato
 
Using Ant To Build J2 Ee Applications
Using Ant To Build J2 Ee ApplicationsUsing Ant To Build J2 Ee Applications
Using Ant To Build J2 Ee Applications
Rajesh Kumar
 
Teflon - Anti Stick for the browser attack surface
Teflon - Anti Stick for the browser attack surfaceTeflon - Anti Stick for the browser attack surface
Teflon - Anti Stick for the browser attack surface
Saumil Shah
 
Leveraging Continuous Integration For Fun And Profit!
Leveraging Continuous Integration For Fun And Profit!Leveraging Continuous Integration For Fun And Profit!
Leveraging Continuous Integration For Fun And Profit!
Jess Chadwick
 
Ant - Another Neat Tool
Ant - Another Neat ToolAnt - Another Neat Tool
Ant - Another Neat Tool
Kanika2885
 
Ant - Another Neat Tool
Ant - Another Neat ToolAnt - Another Neat Tool
Ant - Another Neat Tool
Kanika2885
 
Introduction To Ant1
Introduction To  Ant1Introduction To  Ant1
Introduction To Ant1
Rajesh Kumar
 
Maven 2.0 - Improve your build patterns
Maven 2.0 - Improve your build patternsMaven 2.0 - Improve your build patterns
Maven 2.0 - Improve your build patterns
elliando dias
 
Slides Aquarium Paris 2008
Slides Aquarium Paris 2008Slides Aquarium Paris 2008
Slides Aquarium Paris 2008
julien.ponge
 
API Doc Smackdown
API Doc SmackdownAPI Doc Smackdown
API Doc Smackdown
Ted Husted
 
Front End Website Optimization
Front End Website OptimizationFront End Website Optimization
Front End Website Optimization
Gerard Sychay
 
Selenium RC Automation testing
Selenium RC Automation testingSelenium RC Automation testing
Selenium RC Automation testing
Anand Sharma
 
Introduction To Ant
Introduction To AntIntroduction To Ant
Introduction To Ant
Rajesh Kumar
 
Clustering Made Easier: Using Terracotta with Hibernate and/or EHCache
Clustering Made Easier: Using Terracotta with Hibernate and/or EHCacheClustering Made Easier: Using Terracotta with Hibernate and/or EHCache
Clustering Made Easier: Using Terracotta with Hibernate and/or EHCache
Cris Holdorph
 
Creating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTPCreating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTP
nsandonato
 
Using Ant To Build J2 Ee Applications
Using Ant To Build J2 Ee ApplicationsUsing Ant To Build J2 Ee Applications
Using Ant To Build J2 Ee Applications
Rajesh Kumar
 
Teflon - Anti Stick for the browser attack surface
Teflon - Anti Stick for the browser attack surfaceTeflon - Anti Stick for the browser attack surface
Teflon - Anti Stick for the browser attack surface
Saumil Shah
 
Leveraging Continuous Integration For Fun And Profit!
Leveraging Continuous Integration For Fun And Profit!Leveraging Continuous Integration For Fun And Profit!
Leveraging Continuous Integration For Fun And Profit!
Jess Chadwick
 
Ad

Recently uploaded (20)

AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 

Ant Build Tool

  • 1. 06/03/09 HUGE / ParentsConnect / HUGE 45 Main Street, 2nd Floor NY NY 11201 718.625.4843 www.hugeinc.com step-by-step guide Ant Build Tool May 22nd, 2008
  • 2. Introduction Ant is a Java-based build tool . It is kind of like Make , without Make's wrinkles and with the full portability of pure Java code. HUGE / Ant
  • 3. Prerequisites apache ant ( http://ant.apache.org/ ) yui compressor ( http://developer.yahoo.com/yui/compressor/ ) yui compressor ant task ( http://code.google.com/p/javaflight-code/ ) HUGE / Ant
  • 4. Installation download ant binary files, uncompress it, and add bin folder to system path download yahoo compressor and copy yuicompressor-x.x.x.jar to ant’s lib folder download yahoo compressor ant task and copy yui-compressor-ant-taks-x.x.jar to ant’s lib folder HUGE / Ant
  • 5. Folder Structure trunk/deploy /wwwroot /css /js /img /inc build.xml /wwwroot-compressed HUGE / Ant
  • 6. 1. Build Script <project name=“HUGE&quot; default=&quot;build&quot; basedir=&quot;.&quot;> <taskdef name=&quot;yui-compressor&quot; classname=&quot;net.noha.tools.ant.yuicompressor.tasks.YuiCompressorTask&quot;></taskdef> <property name=&quot;src&quot; location=&quot; wwwroot &quot;/> <property name=&quot;build&quot; location=&quot; wwwroot-compressed &quot;/> ... </project> HUGE / Ant
  • 7. 2. Build Script <target name=&quot;build&quot; description=&quot;generate the distribution&quot;> … </target> HUGE / Ant
  • 8. 3. Build Script <target name=&quot;compress&quot; depends=&quot;build&quot; description=&quot;compress javascript and css&quot;> … </target> HUGE / Ant
  • 9. 4. Build Script (clean target) <target name=&quot;clean&quot; description=&quot;clean up&quot;> <delete dir=&quot;${build}&quot;> <include name=&quot;**/*&quot;/> </delete> </target> HUGE / Ant
  • 10. 5. Build Script (build target) <copy todir=&quot;${build}&quot;> <fileset dir=&quot;${src}&quot; excludes=&quot;css/global/,css/weeks/,js/global/,js/weeks/&quot; /> </copy> <concat destfile=&quot;${build}/js/min/weeks.js&quot;> <fileset dir=&quot;${src}/js/global/&quot;/> <fileset dir=&quot;${src}/js/weeks/&quot;/> </concat> <concat destfile=&quot;${build}/css/min/weeks.css&quot;> <fileset dir=&quot;${src}/css/global/&quot;/> <fileset dir=&quot;${src}/css/weeks/&quot;/> </concat> HUGE / Ant
  • 11. 6. Build Script (build target) <move file=&quot;${build}/inc/weeks/ head-css-min.jsp &quot; tofile=&quot;${build}/inc/weeks/ head-css.jsp &quot;/> <move file=&quot;${build}/inc/weeks/ head-js-min.jsp &quot; tofile=&quot;${build}/inc/weeks/ head-js.jsp &quot;/> HUGE / Ant
  • 12. 7. Build Script (head-css) <%@ include file=&quot;inc/weeks/head-css.jsp&quot; %> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/01-reset.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/02-font.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/03-global.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/box.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/footer.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/global/header.css&quot; /> <link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/min/weeks.css&quot; /> (head-css-min.jsp) HUGE / Ant
  • 13. 8. Build Script (head-js) <%@ include file=&quot;inc/weeks/head-js.jsp&quot; %> <script type=&quot;text/javascript&quot; src=&quot;js/global/0_jquery-1.2.4.min.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;js/weeks/0_ui.core.min.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;js/weeks/1_ui.accordion.min.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;js/weeks/2_ui.tabs.min.js&quot;></script> <script type=&quot;text/javascript&quot; src=&quot;js/min/weeks.js&quot;></script> (head-js-min.jsp) HUGE / Ant
  • 14. 9. Build Script (compress target) <mkdir dir=&quot; ${build}/js/compress &quot;/> <yui-compressor warn=&quot;false“ munge=&quot;true“ jsSuffix=&quot;.js“ preserveallsemicolons=&quot;false“ fromdir=&quot; ${build}/js &quot; todir=&quot; ${build}/js/compress &quot;> </yui-compressor> <copy todir=&quot; ${build}/js &quot;> <fileset dir=&quot; ${build}/js/compress &quot;/> </copy> <delete dir=&quot; ${build}/js/compress &quot;/> HUGE / Ant
  • 15. 10. Build Script (compress target) <mkdir dir=&quot; ${build}/css/compress &quot;/> <yui-compressor warn=&quot;false” munge=&quot;true“ cssSuffix=&quot;.css&quot; fromdir=&quot; ${build}/css “ todir=&quot; ${build}/css/compress &quot;> </yui-compressor> <copy todir=&quot; ${build}/css &quot;> <fileset dir=&quot; ${build}/css/compress &quot;/> </copy> <delete dir=&quot; ${build}/css/compress &quot;/> HUGE / Ant