Groovy and Gradle Goodness Notebooks
Groovy and Gradle Goodness Notebooks
About the Bundle
Learn about the (hidden) features in Groovy and Gradle with these two books. Each book contains a bundle of blog posts that are published a Message from mrhaki. The posts contain a lot of sample code to explain the different great features of Groovy and Gradle.
Groovy Goodness Notebook
Experience the Groovy programming language through code snippets
In 2009 I started to write small blog posts about Groovy at Messages from mrhaki. The posts contained code samples of cool Groovy features I just didn't want to forget. The blog posts turned out to be a useful resource for people learning and using Groovy in their every day programming.
The Groovy Goodness Notebook contains the blog posts about Groovy previously mentioned on my blog. The posts have been edited slightly so they can be used for the book. The book gives a broad overview of all the great features we can find in the Groovy language.
Updated on October 1, 2021 to include the following new subjects:
- Direct Field Access In (Super) Classes
- Identity Closure
- Groovy Goodness Notebook Is Updated
- Uncapitalize Strings
- Creating Root JSON Array With JsonBuilder
- Using The Call Operator ()
- Redirecting Print Methods In Scripts
- Download Grab Dependencies In IntelliJ IDEA
- Make Sure Closeable Objects Are Closed Using withCloseable Method
- Add Map Constructor With Annotation
- Base64 URL and Filename Safe Encoding
- Calculate MD5 And SHA Hash Values
- Creating Extra Method Supporting Named Arguments Using @NamedVariant Annotation
- Customizing JSON Output
- Easy Object Creation With Tap Method
- Getting All Init And Tail Values Recursively
- Implement Interface And Abstract Methods Automatically
- Intersect Collections With Custom Comparator
- Java 8 Stream Enhancements
- Preorder And Postorder Tree Traversal
- Remove Last Item From List Using RemoveLast Method (And Pop/Push Methods Reimplemented)
- Truncate And Round BigDecimal Values
- Tuples With Up To 9 Items
- Unmodifiable Collections
- Use Optional In Conditional Context
- Use Range By Method To Set Steps Between Numbers
- Using String Values In Ranges
- Where Is My Class?
- Use Expanded Variables in SQL GString Query
- Transform Elements While Flattening
- Calculate Average For Collection
- Check Item Is Not In A Collection With !in
- Create YAML With YamlBuilder
- The Elvis Assignment Operator
- Lambda Default Parameter Value
- Parse YAML With YamlSlurper
- Shuffle List or Array
- Check Object Instances Are The Same With === Operator
- Getting Parts Of A String Enclosed By Strings
- Safe Index Based Access For Lists, Arrays and Maps
- Taking Or Dropping Number Of Characters From A String
- Using !instanceof Operator
The book categorizes the posts into the following sections:
- Regular Expressions
- Lists, Ranges and Arrays
- Files, Reades, Writers and URls
- XML and JSON
- AST transformations
- DSL and Builder Support
Gradle Goodness Notebook
Experience Gradle through code snippets
In 2009 I started to write small blog posts about Gradle at Messages from mrhaki. The posts contained code samples of cool Gradle features I just didn't want to forget. The blog posts turned out to be a useful resource for people learning and using Groovy in their every day programming.
The Gradle Goodness Notebook contains the blog posts about Gradle previously mentioned on my blog. The posts have been edited slightly so they can be used for the book. The book gives a broad overview of all the great features we can find in the Gradle build tool.
Latest update on October 6, 2021 with the following blog posts:
- Add But Do Not Apply Plugin Using Plugins Block
- Adding Task With Rule Based Model Configuration
- Creation Rules For Rule Based Model Configuration Using Model DSL
- Custom Plugin Repositories With Plugins DSL
- Delegate Build And Run Actions To Gradle In IntelliJ IDEA
- Get Model Report In Short Format
- Getting Project Information Into Rule Based Model Configuration
- Replacing << Operator For Tasks
- Set Default Values With Rule Based Model Configuration
- Show Hidden Model Objects
- Validate Model In Rule Based Model Configuration
- Passing Environment Variable Via Delegate Run Action In IntelliJ IDEA
- Run Task Ignoring Up-to-date Checks
- Check Operating System In Build Scripts
- Skip Task When Input Empty Using @SkipWhenEmpty Annotation
- Create Shortcut Key To Refresh Gradle Projects In IntellIJ IDEA
- Change Local Build Cache Directory
- Enable Build Cache For All Builds
- Using Incremental Task Action
- Command Line Options For Custom Tasks
- Enable Task Based On Offline Command Line Argument
- Generate Javadoc In HTML5
- Rerun Incremental Tasks At Specific Intervals
- Only Show All Tasks In A Group
- Manage Dependency Versions With Dependency Constraints
- Use bill of materials (BOM) As Dependency Constraints
- Stop Build After One Failing Test
- Replace Files In Archives
- Setting Plugin Version From Property In Plugins Section
- Shared Configuration With Conventions Plugin
- Add Support For "Scratch" Files To Java Project
- Create Properties File With WriteProperties Task
- Enabling Preview Features For Java
The book contains the following sections:
- Command line
- Java and Groovy
The Leanpub 60-day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms
80% Royalties. Earn $16 on a $20 book.
We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $12 million USDwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.