Commit Graph

8 Commits (b59bc20f58c746c9744b14c585aebed5e97c30e5)

Author SHA1 Message Date
Andy Wilkinson c2459fce47 Raise the minimum version of Gradle to 4.0
Closes gh-9516
7 years ago
Andy Wilkinson f0b7e7cf56 Ensure that fat jars and wars do not corrupt UTF-8 entry names
Previously, both Repackager and the Grade plugin used the JRE's
standard ZipOutputStream when creating a fat jar or war file. This
resulted in entry names that needed UTF-8 encoding to become
corrupted.

This commit updates both to use Commons Compress'
ZipArchiveOutputStream and to configure the stream's encoding and
each entry's Unix mode. This ensures that names are encoded using
UTF-8 and can be read back in correctly by common zip tools.

Closes gh-9405
8 years ago
Andy Wilkinson 7f5ca24ff9 Make Maven Central available to Gradle plugin's build 8 years ago
Andy Wilkinson 01166381a0 Provide separate documentation (API and reference) for Gradle plugin 8 years ago
Andy Wilkinson 85267def3e Integration test the reaction to the Application plugin being applied 8 years ago
Andy Wilkinson 8d55801c4d Restructure the code to enforce separation of plugin logic and tasks 8 years ago
Andy Wilkinson 2ce8556976 Introduce bootJar and bootWar tasks for creating fat jars and wars
Previously, the BootRepackage task would take the output of a Jar
or War task and repackage it in a similar manner to Spring Boot's
Maven plugin. This caused several problems in Gradle including
broken up-to-date checks and a lack of configurability. See the issues
referenced below for full details.

This commit replaces BootRepackage with BootJar and BootWar
for building executable jars and wars respectively. BootJar extends
Gradle's standard Jar task and BootWar extends Gradle's standard War
task. This means that terms of configuration, the creation of
executable jars and wars is now as flexible as the creation of
standards jars and wars.

Closes gh-8167
Closes gh-8099
Closes gh-6846
Closes gh-5861
Closes gh-5393
Closes gh-5259
Closes gh-3931
8 years ago
Andy Wilkinson 9b15e6b5a3 Use Gradle, executed by Maven, to build the Gradle plugin 8 years ago