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

More Related Content

PDF
Riding on rails3 with full stack of gems
PDF
Under the Dome (of failure driven pipeline)
PDF
JCON 2021 talk - "Wil Git Be Around Forever? A List of Possible Successors"
PPTX
Dani Sr Sem
PDF
The Ajax Experience: State Of The Browsers
PDF
"BaseSpace Apps- Is One Enough?' Biomatters' CTO D.Matt Landry on Bioinformat...
PDF
Will Git Be Around Forever? A List of Possible Successors
PDF
Return of the Command Line: New Text Interfaces
Riding on rails3 with full stack of gems
Under the Dome (of failure driven pipeline)
JCON 2021 talk - "Wil Git Be Around Forever? A List of Possible Successors"
Dani Sr Sem
The Ajax Experience: State Of The Browsers
"BaseSpace Apps- Is One Enough?' Biomatters' CTO D.Matt Landry on Bioinformat...
Will Git Be Around Forever? A List of Possible Successors
Return of the Command Line: New Text Interfaces

What's hot (19)

DOCX
Access youtube in china! china worldchat
PDF
backlink
PDF
Submitting Your First Plugin to WordPress.org
PDF
Git inter-snapshot public
KEY
Best of the EdTech Web 2010 - With Links
PPTX
The page and the desktop
PDF
FP in JS-Land
PDF
Search videos with youtube api3
PDF
MIDI is Staging a Comeback... In Your Browser!
PDF
Growing pains - PosKeyErrors and other malaises
PPTX
How I built the demo's
PDF
Zotero Visualisierungen
PDF
Armorizing applications
PDF
Global_Shopping_Online
PDF
Global_Shopping_Online
PDF
Global_Shopping_Online
PDF
Global_Shopping_Online
KEY
iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...
PPTX
Re-using social media data
Access youtube in china! china worldchat
backlink
Submitting Your First Plugin to WordPress.org
Git inter-snapshot public
Best of the EdTech Web 2010 - With Links
The page and the desktop
FP in JS-Land
Search videos with youtube api3
MIDI is Staging a Comeback... In Your Browser!
Growing pains - PosKeyErrors and other malaises
How I built the demo's
Zotero Visualisierungen
Armorizing applications
Global_Shopping_Online
Global_Shopping_Online
Global_Shopping_Online
Global_Shopping_Online
iOSDevCamp 2011 - Getting "Test"-y: Test Driven Development & Automated Deplo...
Re-using social media data
Ad

Viewers also liked (17)

PPT
HUGE Mobile Tests
PDF
Narmada riparian
PPS
The Prettiest Women In Todays Fine Art 1202274793358929 2
PPT
Forms standards
PPT
Lady In Red 1205845422839996 4
PPT
Monetizing blogs effectively
PPS
Para Ti Mi Amiguita Paulette
PPT
New Browsers
PDF
Holly Huntley Executive Coach
PPT
Google Maps API
PPS
Poze In Doi
PPT
Network Effect
PPT
Microformats
PPT
Again Funny 1205970537402857 5
PDF
대리운전 어플 랭킹
PPTX
4 Ways to Make Your PowerPoint Presentation Unique
PDF
20170118 Presentatie 'Overleven in een wereld van fintechs v1.0'
HUGE Mobile Tests
Narmada riparian
The Prettiest Women In Todays Fine Art 1202274793358929 2
Forms standards
Lady In Red 1205845422839996 4
Monetizing blogs effectively
Para Ti Mi Amiguita Paulette
New Browsers
Holly Huntley Executive Coach
Google Maps API
Poze In Doi
Network Effect
Microformats
Again Funny 1205970537402857 5
대리운전 어플 랭킹
4 Ways to Make Your PowerPoint Presentation Unique
20170118 Presentatie 'Overleven in een wereld van fintechs v1.0'
Ad

Similar to Ant Build Tool (20)

PPT
Demystifying Maven
PPT
Apache Ant
PDF
Deploy Flex with Apache Ant
ODP
Ant User Guide
PPT
Ant - Another Neat Tool
PPT
Ant - Another Neat Tool
PPT
PPT
Introduction To Ant1
PPT
Maven 2.0 - Improve your build patterns
PDF
Slides Aquarium Paris 2008
PDF
API Doc Smackdown
PPT
Front End Website Optimization
PPT
Selenium RC Automation testing
PDF
Shifting Gears
PPT
Introduction To Ant
ODP
Clustering Made Easier: Using Terracotta with Hibernate and/or EHCache
PPT
Creating Custom Dojo Widgets Using WTP
PPT
Using Ant To Build J2 Ee Applications
PPT
Teflon - Anti Stick for the browser attack surface
PPTX
Leveraging Continuous Integration For Fun And Profit!
Demystifying Maven
Apache Ant
Deploy Flex with Apache Ant
Ant User Guide
Ant - Another Neat Tool
Ant - Another Neat Tool
Introduction To Ant1
Maven 2.0 - Improve your build patterns
Slides Aquarium Paris 2008
API Doc Smackdown
Front End Website Optimization
Selenium RC Automation testing
Shifting Gears
Introduction To Ant
Clustering Made Easier: Using Terracotta with Hibernate and/or EHCache
Creating Custom Dojo Widgets Using WTP
Using Ant To Build J2 Ee Applications
Teflon - Anti Stick for the browser attack surface
Leveraging Continuous Integration For Fun And Profit!

Recently uploaded (20)

DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Approach and Philosophy of On baking technology
PDF
Encapsulation theory and applications.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Cloud computing and distributed systems.
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
cuic standard and advanced reporting.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
The AUB Centre for AI in Media Proposal.docx
Approach and Philosophy of On baking technology
Encapsulation theory and applications.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Cloud computing and distributed systems.
Building Integrated photovoltaic BIPV_UPV.pdf
Machine learning based COVID-19 study performance prediction
MIND Revenue Release Quarter 2 2025 Press Release
Programs and apps: productivity, graphics, security and other tools
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Review of recent advances in non-invasive hemoglobin estimation
Assigned Numbers - 2025 - Bluetooth® Document
Digital-Transformation-Roadmap-for-Companies.pptx
Unlocking AI with Model Context Protocol (MCP)
cuic standard and advanced reporting.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Encapsulation_ Review paper, used for researhc scholars
The Rise and Fall of 3GPP – Time for a Sabbatical?

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