GetEnabledDirectoryReportDestinations(), getEnabledFileReportDestinations() and getEnabledReportNames() have all been removed from .ReportContainer. The cache control DSL provided by the .cache.* interfaces are no longer available. Declaring a plugins block is allowed now. Delegated properties used to access Gradle’s build properties - defined in gradle.properties for example - must now be explicitly typed. The APIs of many native tasks related to compilation, linking and installation have changed in breaking ways. The structure of Gradle’s plain console output has changed, which may break tools that scrape that output. There have been several changes to property factory methods on DefaultTask that may impact the creation of custom tasks.Ĭheckstyle configuration files in subprojects - the old by-convention location - will be ignored unless you explicitly configure their path via nfigDir or nfig. In the Worker API, the working directory of a worker can no longer be set.Ī change in behavior related to dependency and version constraints may impact a small number of users. This is not the case anymore as the source field is now declared as private. In previous Gradle versions, the source field in SourceTask was accessible from subclasses. The IdeaModule Tooling API model element contains methods to retrieve resources and test resources so those elements were removed from the result of IdeaModule.getSourceDirs() and IdeaModule.getTestSourceDirs(). Older client libraries can no longer run builds with Gradle 5.0. Gradle 5.0 requires a minimum Tooling API client version of 3.0. The same applies to builds run through TestKit. The Tooling API can no longer connect to builds using a Gradle version below Gradle 2.6. The gradlePluginPortal() repository no longer looks for JARs without a POM by default.
Ideally you shouldn’t use classes from this package, but, as a quick fix, you can add explicit imports to your build scripts for those classes. This has been changed and it will now publish Maven 3 metadata, just like the Maven Publish Plugin. The Maven Plugin used to publish the highly outdated Maven 2 metadata format.
You can no longer create your own instances of JavaPluginConvention, ApplicationPluginConvention, WarPluginConvention, EarPluginConvention, BasePluginConvention, and ProjectReportsPluginConvention. The nfigureForSourceSet() method has been removed.
#SEPARATION STUDIO 4 PRE RELEASE UPGRADE#
The JavaLibrary(PublishArtifact, DependencySet) constructor has been removed - this was used by the Shadow Plugin, so make sure you upgrade to at least version 2.x of that plugin. Use the JDepend.classesDirs and SourceSetOutput.classesDirs properties instead. The classesDir property has been removed from both the JDepend task and SourceSetOutput. The testClassesDir property has been removed from the Test task - use testClassesDirs instead. Gradle will no longer automatically apply annotation processors that are on the compile classpath - use CompileOptions.annotationProcessorPath instead. You can no longer use -processorpath as a generic compiler argument - use CompileOptions.annotationProcessorPath instead. You can no longer use -source-path as a generic compiler argument - use CompileOptions.sourcepath instead. The CompileOptions.bootClasspath property has been removed - use CompileOptions.bootstrapClasspath instead. This problem may exhibit as a missing getBuildDependencies() method. SimpleFileCollection has been removed - use Project.files(Object…) instead.ĭon’t have your own classes extend AbstractFileCollection - use the Project.files() method instead. The FileCollection.add() method has been removed - use Project.files() and Project.fileTree() to create configurable file collections/file trees and add to them via om(). The FileCollection.stopExecutionIfEmpty() method has been removed - use the annotation on FileCollection task properties instead.
To reset the property back to its default value. The property setter no longer accepts null as a way You can no longer pass null as the configuration action of om(Object, Action).įor better compatibility with the Kotlin DSL, CopySpec.duplicatesStrategy is no longer nullable. You can no longer cast FileCollection objects to other types using the as keyword or the asType() method. Modeling Feature Variants and Optional Dependencies.Producing and Consuming Variants of Libraries.Handling Mutually Exclusive Dependencies.Understanding Library and Application Differences.Writing Custom Gradle Types and Service Injection.Avoiding Unnecessary Task Configuration.Understanding Configuration and Execution.Sharing Build Logic between Subprojects.Declaring Dependencies between Subprojects.