Public Release Notes - Gradle Tools - Version 2.1

Note

This Gradle Tools version is included in Intershop 7 version 7.5.1. It can also be used along with all Intershop 7 versions 7.4.6.1 - 7.5.1.

This Gradle Tools version is based on Gradle 2.1.

1 Migrate Tools Version

To use Gradle Tools version 2.1 with Intershop 7 version 7.4.6.1 to 7.5.0, perform the following steps to migrate your environment:

  1. Import the delivery containing the Gradle Tools 2.1 into your repository, see Recipe: Import Intershop Delivery in Cookbook - Setup CI Infrastructure (valid to GradleTools 2.1).
  2. Regenerate corporate plugin configuration and corporate distribution by following the Recipe: Create Sources From Intershop Templates in Cookbook - Setup CI Infrastructure (valid to GradleTools 2.1). Run the tasks createCorporateConfiguration and createCorporateDistribution.
  3. Build the corporate plugin configuration and the corporate distribution by triggering the automated CI processes.
  4. For both, your assembly and component set, perform the following steps:
    • Change the Gradle distribution used by the Gradle Wrapper by modifying the property distributionUrl in gradle/wrapper/gradle-wrapper.properties.
    • Change the following properties in the gradle.properties file:

      gradle.properties for updated Gradle Tools
      filter.com.intershop.build.set.cartridge-plugins=2.1.+
      filter.com.intershop.build.set.extension-plugins=2.1.+
      version.com.intershop.deployment-bootstrap=2.1.+
  5. In settings.gradle deployment files raise the version of deployment-bootstrap to 'com.intershop:deployment-bootstrap:2.1.+'.

2 New and Noteworthy

2.1 Updated Gradle Version to 2.1

Intershop Gradle Tools 2.1 are based on Gradle 2.1. The previous version was based on Gradle 2.0.

See Gradle's own release notes for changes.

2.2 Diagnose Deployed Files

You can now get additional information about your deployed system, that helps diagnosing deployment-related issues.

The Cookbook - Gradle Deployment Tools (Recipe: List All Deployed Resources) contains information on how to invoke this functionality and how to interpret its output.

2.3 Support Non-Strict Validation of XML Schema during JAXB Generation

Support for less strict validation of XML schemata was introduced with Gradle Tools 2.1. See JAXB documentation:

Quote

By default, the XJC binding compiler performs strict validation of the source schema before processing it. Use this option to disable strict schema validation. This does not mean that the binding compiler will not perform any validation, it simply means that it will perform less-strict validation.

You can trigger this behaviour by disabling the strictValidation property (default: true):

build.gradle
[...]
jaxb {
    [...]
    strictValidation = false
}

3 Fixed Issues

3.1 Do Not Resolve Symbolic Links for JAVA_HOME

3.1.1 Problem

If you point your JAVA_HOME location to a symlink (like /usr/java/default), this symlink was going to be resolved during deployment of Intershop 7.5.

When upgrading your local JDK version, which changes the symlink of JAVA_HOME, Intershop 7.5 will still try to use the old location. In case the previous JDK version has been removed, the server will fail to start.

3.1.2 Workaround

You have to redeploy your server after each JDK update in order to reset its location.

3.1.3 Solution

Starting with Gradle Tools 2.1, the deployment will retain symlinks for JAVA_HOME, making it possible to update Java versions without the need to redeploy.

3.1.4 Migration hints

You need to redeploy the server once with Gradle Tools 2.1 to replace the resolved JAVA_HOME path. Future JDK updates do not require deployment anymore.

3.2 Previous known issues

Fixed the following known issues from Public Release Notes - Gradle Tools - Version 2.0:

  • Redeployment resets the system's Solr Configuration
  • Versioning issues, that have been fixed in the Gradle Tools 2.0.1 release.

4 Known Issues

4.1 Generated Dependency Versions

The intershop-ci-bootstrap will generate projects with dependencies to Gradle Tools plugins in version 2.+. This may break the build once newer releases of Gradle Tools are made available, because they may not be compatible with older Gradle base versions anymore.

Please change the following properties in all your gradle.properties files from

problematic gradle.properties
filter.com.intershop.build.set.cartridge-plugins=2.+
filter.com.intershop.build.set.extension-plugins=2.+
version.com.intershop.deployment-bootstrap=2.+

to

safe gradle.properties
filter.com.intershop.build.set.cartridge-plugins=2.1.+
filter.com.intershop.build.set.extension-plugins=2.1.+
version.com.intershop.deployment-bootstrap=2.1.+

Disclaimer

The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.

Customer Support
Knowledge Base
Product Resources
Support Tickets