This is an automated email from the ASF dual-hosted git repository. jdaugherty pushed a commit to branch more-cli-updates2 in repository https://gitbox.apache.org/repos/asf/grails-core.git
The following commit(s) were added to refs/heads/more-cli-updates2 by this push: new 513b0787de Rework the distribution to use gradle's application and restore the classpath to pre-project merger. 513b0787de is described below commit 513b0787de7c990b1235dcb0dd910d6c5ebca480 Author: James Daugherty <jdaughe...@jdresources.net> AuthorDate: Mon May 5 23:45:25 2025 -0400 Rework the distribution to use gradle's application and restore the classpath to pre-project merger. --- build.gradle | 10 -- gradle/assemble-config.gradle | 42 ------- gradle/assemble-root-config.gradle | 140 ------------------------ grails-async/core/build.gradle | 1 - grails-async/gpars/build.gradle | 1 - grails-async/plugin/build.gradle | 1 - grails-async/rxjava/build.gradle | 1 - grails-async/rxjava2/build.gradle | 1 - grails-async/rxjava3/build.gradle | 1 - grails-bootstrap/build.gradle | 1 - grails-cache/build.gradle | 1 - grails-codecs-core/build.gradle | 1 - grails-codecs/build.gradle | 1 - grails-common/build.gradle | 1 - grails-console/build.gradle | 1 - grails-controllers/build.gradle | 1 - grails-converters/build.gradle | 1 - grails-core/build.gradle | 1 - grails-databinding-core/build.gradle | 1 - grails-databinding/build.gradle | 1 - grails-datasource/build.gradle | 1 - grails-doc/src/en/guide/contributing/build.adoc | 6 +- grails-domain-class/build.gradle | 1 - grails-encoder/build.gradle | 1 - grails-events/compat/build.gradle | 1 - grails-events/core/build.gradle | 1 - grails-events/gpars/build.gradle | 1 - grails-events/plugin/build.gradle | 1 - grails-events/rxjava/build.gradle | 1 - grails-events/rxjava2/build.gradle | 1 - grails-events/rxjava3/build.gradle | 1 - grails-events/spring/build.gradle | 1 - grails-events/transforms/build.gradle | 1 - grails-fields/build.gradle | 1 - grails-gsp/core/build.gradle | 1 - grails-gsp/grails-sitemesh3/build.gradle | 1 - grails-gsp/grails-taglib/build.gradle | 1 - grails-gsp/grails-web-gsp-taglib/build.gradle | 1 - grails-gsp/grails-web-gsp/build.gradle | 1 - grails-gsp/grails-web-jsp/build.gradle | 1 - grails-gsp/grails-web-taglib/build.gradle | 1 - grails-gsp/plugin/build.gradle | 1 - grails-i18n/build.gradle | 1 - grails-interceptors/build.gradle | 1 - grails-logging/build.gradle | 1 - grails-mimetypes/build.gradle | 1 - grails-rest-transforms/build.gradle | 1 - grails-scaffolding/build.gradle | 1 - grails-services/build.gradle | 1 - grails-shell-cli/build.gradle | 81 +++++++------- grails-spring/build.gradle | 1 - grails-test-core/build.gradle | 1 - grails-testing-support-core/build.gradle | 1 - grails-testing-support-web/build.gradle | 1 - grails-url-mappings/build.gradle | 1 - grails-validation/build.gradle | 1 - grails-views-core/build.gradle | 1 - grails-views-gson/build.gradle | 1 - grails-views-markup/build.gradle | 1 - grails-web-boot/build.gradle | 1 - grails-web-common/build.gradle | 1 - grails-web-core/build.gradle | 1 - grails-web-databinding/build.gradle | 1 - grails-web-mvc/build.gradle | 1 - grails-web-url-mappings/build.gradle | 1 - 65 files changed, 44 insertions(+), 295 deletions(-) diff --git a/build.gradle b/build.gradle index 776037db54..d4ce1767e3 100644 --- a/build.gradle +++ b/build.gradle @@ -37,7 +37,6 @@ ext { // Directories created during the build which are related // to turning the workspace root into a GRAILS_HOME distInstallDir = layout.buildDirectory.dir('dist-tmp') - homeDistDir = layout.projectDirectory.dir('dist') homeBinDir = layout.projectDirectory.dir('bin') homeConfDir = layout.projectDirectory.dir('conf') homeLibDir = layout.projectDirectory.dir('lib') @@ -93,16 +92,7 @@ subprojects { apply from: rootProject.layout.projectDirectory.file('gradle/dependency-licenses.gradle') } -tasks.register('clean', Delete).configure { - group = 'build' - - doFirst { - delete(layout.buildDirectory, homeBinDir, homeConfDir, homeDistDir, homeLibDir) - } -} - apply { - from layout.projectDirectory.file('gradle/assemble-root-config.gradle') from layout.projectDirectory.file('gradle/publish-root-config.gradle') from layout.projectDirectory.file('gradle/rat-root-config.gradle') } diff --git a/gradle/assemble-config.gradle b/gradle/assemble-config.gradle deleted file mode 100644 index 3f31982225..0000000000 --- a/gradle/assemble-config.gradle +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -tasks.register('installToHomeDist').configure { Task task -> - task.inputs.files(tasks.named('jar')) - task.outputs.dir(distInstallDir) - - doLast { - copy { - it.from layout.buildDirectory.dir('libs') - it.into distInstallDir - it.exclude '*sources.jar', '*-javadoc.jar' - } - } -} - -tasks.withType(PublishToMavenLocal).configureEach { - it.dependsOn('installToHomeDist') - it.doLast { - copy { - from distInstallDir - into homeDistDir - includeEmptyDirs = false - } - } -} \ No newline at end of file diff --git a/gradle/assemble-root-config.gradle b/gradle/assemble-root-config.gradle deleted file mode 100644 index 67bdfbbb34..0000000000 --- a/gradle/assemble-root-config.gradle +++ /dev/null @@ -1,140 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import org.gradle.api.internal.plugins.StartScriptGenerator -import org.gradle.api.internal.plugins.UnixStartScriptGenerator -import org.gradle.api.internal.plugins.WindowsStartScriptGenerator - -tasks.register('collectCliDependencies').configure { - ext { - baseCachesDir = "$gradle.gradleUserHomeDir/caches" - cacheDir = "$baseCachesDir/modules-2" - metadata = "$cacheDir/metadata-2.1/descriptors" - } - doLast { - def projectNames = subprojects*.name - def seen = [] - project(':grails-shell-cli').configurations.runtimeClasspath.with { - for (artifact in resolvedConfiguration.resolvedArtifacts) { - if (artifact in seen) continue - seen << artifact - def dependency = artifact.moduleVersion.id - if (!projectNames.contains(dependency.name)) { - syncCliDependencies.into("$dependency.group/$dependency.name/jars") { - from artifact.file // this will trigger the actual download if necessary - } - } - } - } - } -} - -tasks.register('syncCliDependencies', Sync).configure { - dependsOn 'collectCliDependencies' - into homeLibDir - includeEmptyDirs = false - duplicatesStrategy = DuplicatesStrategy.INCLUDE -} - -tasks.register('grailsCreateStartScripts', GrailsCreateStartScripts).configure { - description = 'Creates OS specific scripts to run grails-shell as a JVM application.' - mainClass = 'org.grails.cli.GrailsCli' - applicationName = 'grails' - defaultJvmOpts = ['-XX:+TieredCompilation', '-XX:TieredStopAtLevel=1', '-XX:CICompilerCount=3'] - outputDir = rootProject.layout.projectDirectory.dir('bin').asFile - classpath = rootProject.childProjects['grails-shell-cli'].configurations.runtimeClasspath - projectArtifacts = rootProject.childProjects['grails-shell-cli'].tasks.named('jar').get().outputs.files.collect { "dist/${it.name}" } as List<String> - doLast { - ant.replace(file: rootProject.layout.projectDirectory.file('bin/grails').asFile, token: 'media/gradle.icns', value: 'media/icons/grails.icns') - ant.chmod(file: rootProject.layout.projectDirectory.file('bin/grails').asFile, perm: 'ugo+rx') - } -} - -class GrailsCreateStartScripts extends CreateStartScripts { - - @Input - Collection<String> projectArtifacts = [] - - @TaskAction - void generate() { - Project grailsShellProject = project.rootProject.childProjects['grails-shell-cli'] - def unixStartScriptGenerator = new UnixStartScriptGenerator() - unixStartScriptGenerator.template = grailsShellProject.resources.text.fromFile('src/main/resources/unixStartScript.txt') - def generator = new StartScriptGenerator(unixStartScriptGenerator, new WindowsStartScriptGenerator()) - generator.applicationName = applicationName - generator.mainClassName = mainClass.get() - generator.defaultJvmOpts = defaultJvmOpts - generator.optsEnvironmentVar = optsEnvironmentVar - generator.exitEnvironmentVar = exitEnvironmentVar - generator.classpath = projectArtifacts + getClasspath().resolvedConfiguration.resolvedArtifacts.collect { artifact -> - def dependency = artifact.moduleVersion.id - String installedFile = "lib/$dependency.group/$dependency.name/jars/$artifact.file.name" - if (dependency.group.startsWith('org.apache.grails') && !project.file(installedFile).exists()) { - installedFile = "dist/$artifact.file.name" - } - installedFile - } - generator.scriptRelPath = "bin/${unixScript.name}" - generator.generateUnixScript(unixScript) - generator.generateWindowsScript(windowsScript) - } -} - -tasks.register('install').configure { task -> - dependsOn 'syncCliDependencies', 'grailsCreateStartScripts' - subprojects { Project subproject -> - if (!(subproject.name in testProjects) && !(subproject.name in docProjects) && !(subproject.name in cliProjects) && !(subproject.name in profileProjects)) { - task.dependsOn("$subproject.name:publishToMavenLocal") - } - } -} - -tasks.register('assemble', Zip).configure { - group = 'build' - dependsOn 'install' - destinationDirectory = rootProject.layout.buildDirectory.dir('distributions') - archiveBaseName = 'grails' - archiveAppendix = grailsVersion - - exclude '**/CVS/**' - - into("grails-$grailsVersion") { - from(rootProject.layout.projectDirectory) { - include 'bin/grails', 'bin/grails.bat', 'lib/', 'media/icons/grails.icns', 'LICENSE', 'INSTALL', 'NOTICE' - - def pathsToExclude = [ - 'ant/bin', 'src/grails', 'src/war' - ] - docProjects.each { projectName -> - pathsToExclude << rootProject.projectDir.relativePath(project(projectName as String).projectDir) - } - testProjects.each { projectName -> - pathsToExclude << rootProject.projectDir.relativePath(project(projectName as String).projectDir) - } - cliProjects.each { projectName -> - pathsToExclude << rootProject.projectDir.relativePath(project(projectName as String).projectDir) - } - exclude pathsToExclude - } - from(homeDistDir) { - into 'dist' - exclude '*.zip' - } - } -} \ No newline at end of file diff --git a/grails-async/core/build.gradle b/grails-async/core/build.gradle index a5d9cc1e2a..6a4f2b9679 100644 --- a/grails-async/core/build.gradle +++ b/grails-async/core/build.gradle @@ -47,7 +47,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-async/gpars/build.gradle b/grails-async/gpars/build.gradle index 28c68fb59b..ab599f3da3 100644 --- a/grails-async/gpars/build.gradle +++ b/grails-async/gpars/build.gradle @@ -47,7 +47,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-async/plugin/build.gradle b/grails-async/plugin/build.gradle index 9cb4a9be65..f8ff94c033 100644 --- a/grails-async/plugin/build.gradle +++ b/grails-async/plugin/build.gradle @@ -57,7 +57,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-async/rxjava/build.gradle b/grails-async/rxjava/build.gradle index 9d1d4ba9d6..b15111a395 100644 --- a/grails-async/rxjava/build.gradle +++ b/grails-async/rxjava/build.gradle @@ -43,7 +43,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-async/rxjava2/build.gradle b/grails-async/rxjava2/build.gradle index fc29ec3a50..41732df8d9 100644 --- a/grails-async/rxjava2/build.gradle +++ b/grails-async/rxjava2/build.gradle @@ -43,7 +43,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-async/rxjava3/build.gradle b/grails-async/rxjava3/build.gradle index 9cfce1a01c..3c62cff0dd 100644 --- a/grails-async/rxjava3/build.gradle +++ b/grails-async/rxjava3/build.gradle @@ -43,7 +43,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-bootstrap/build.gradle b/grails-bootstrap/build.gradle index a068fa14fd..e62f53dcb5 100644 --- a/grails-bootstrap/build.gradle +++ b/grails-bootstrap/build.gradle @@ -83,7 +83,6 @@ processResources { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-cache/build.gradle b/grails-cache/build.gradle index 03baa3a171..260c069189 100644 --- a/grails-cache/build.gradle +++ b/grails-cache/build.gradle @@ -60,7 +60,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-codecs-core/build.gradle b/grails-codecs-core/build.gradle index f6c0329f95..4fa52b2bb4 100644 --- a/grails-codecs-core/build.gradle +++ b/grails-codecs-core/build.gradle @@ -54,7 +54,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-codecs/build.gradle b/grails-codecs/build.gradle index 6ac5b38dc8..e0468e90ae 100644 --- a/grails-codecs/build.gradle +++ b/grails-codecs/build.gradle @@ -64,7 +64,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-common/build.gradle b/grails-common/build.gradle index 6a45d6bc6e..3dadf85c54 100644 --- a/grails-common/build.gradle +++ b/grails-common/build.gradle @@ -53,7 +53,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-console/build.gradle b/grails-console/build.gradle index e9d2c2b145..e2d0cc792d 100644 --- a/grails-console/build.gradle +++ b/grails-console/build.gradle @@ -67,7 +67,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') } \ No newline at end of file diff --git a/grails-controllers/build.gradle b/grails-controllers/build.gradle index 706034c77f..457a8f9748 100644 --- a/grails-controllers/build.gradle +++ b/grails-controllers/build.gradle @@ -74,7 +74,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-converters/build.gradle b/grails-converters/build.gradle index 3a539420bd..c9a0d65d31 100644 --- a/grails-converters/build.gradle +++ b/grails-converters/build.gradle @@ -73,7 +73,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-core/build.gradle b/grails-core/build.gradle index c41db481cd..e1d525c179 100644 --- a/grails-core/build.gradle +++ b/grails-core/build.gradle @@ -92,7 +92,6 @@ tasks.named('processResources', ProcessResources).configure { ProcessResources i apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-databinding-core/build.gradle b/grails-databinding-core/build.gradle index 1fdcc706ea..4efb0bfcfb 100644 --- a/grails-databinding-core/build.gradle +++ b/grails-databinding-core/build.gradle @@ -57,7 +57,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-databinding/build.gradle b/grails-databinding/build.gradle index 424e273b55..410535c324 100644 --- a/grails-databinding/build.gradle +++ b/grails-databinding/build.gradle @@ -74,7 +74,6 @@ tasks.named('compileTestGroovy').configure { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-datasource/build.gradle b/grails-datasource/build.gradle index 06d2492939..c5fb199e6a 100644 --- a/grails-datasource/build.gradle +++ b/grails-datasource/build.gradle @@ -71,7 +71,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-doc/src/en/guide/contributing/build.adoc b/grails-doc/src/en/guide/contributing/build.adoc index 3a77266b0e..299d6bfe01 100644 --- a/grails-doc/src/en/guide/contributing/build.adoc +++ b/grails-doc/src/en/guide/contributing/build.adoc @@ -19,7 +19,7 @@ under the License. If you're interested in contributing fixes and features to any part of grails, you will have to learn how to get hold of the project's source, build it and test it with your own applications. Before you start, make sure you have: -* A JDK (11 or above) +* A JDK (17 or above) * A git client Once you have all the pre-requisite packages installed, the next step is to download the Grails source code, which is hosted at http://github.com[GitHub] in several repositories owned by the http://github.com/grails["grails" GitHub user]. This is a simple case of cloning the repository you're interested in. For example, to get the core framework run: @@ -39,12 +39,12 @@ If you look at the project structure, you'll see that it doesn't look much like [source,groovy] ---- -./gradlew install +./gradlew grails-shell-cli:installDist ---- This will fetch all the standard dependencies required by Grails and then build a `GRAILS_HOME` installation. Note that this target skips the extensive collection of Grails test classes, which can take some time to complete. -Once the above command has finished, simply set the `GRAILS_HOME` environment variable to the checkout directory and add the "bin" directory to your path. When you next type `grails` command to run, you'll be using the version you just built. +Once the above command has finished, simply set the `GRAILS_HOME` environment variable to the directory `grails-shell-cli/build/install/grails` and add the `bin` directory to your path. When you next type `grails` command to run, you'll be using the version you just built. If you are using http://sdkman.io[SDKMAN] then that can also be used to work with this local installation via the following: diff --git a/grails-domain-class/build.gradle b/grails-domain-class/build.gradle index a0f0c0bb95..c53f0d33dd 100644 --- a/grails-domain-class/build.gradle +++ b/grails-domain-class/build.gradle @@ -74,7 +74,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-encoder/build.gradle b/grails-encoder/build.gradle index a68f99c77c..73504efd32 100644 --- a/grails-encoder/build.gradle +++ b/grails-encoder/build.gradle @@ -58,7 +58,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-events/compat/build.gradle b/grails-events/compat/build.gradle index 50bb142a8a..892c32cd60 100644 --- a/grails-events/compat/build.gradle +++ b/grails-events/compat/build.gradle @@ -38,7 +38,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') } \ No newline at end of file diff --git a/grails-events/core/build.gradle b/grails-events/core/build.gradle index ffbe5cf087..38d9198358 100644 --- a/grails-events/core/build.gradle +++ b/grails-events/core/build.gradle @@ -44,7 +44,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-events/gpars/build.gradle b/grails-events/gpars/build.gradle index 036dfdbfd7..c94fee9aa6 100644 --- a/grails-events/gpars/build.gradle +++ b/grails-events/gpars/build.gradle @@ -45,7 +45,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-events/plugin/build.gradle b/grails-events/plugin/build.gradle index 753fe0da8a..1530d73768 100644 --- a/grails-events/plugin/build.gradle +++ b/grails-events/plugin/build.gradle @@ -51,7 +51,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-events/rxjava/build.gradle b/grails-events/rxjava/build.gradle index 7af4fd2db6..ebb69b7437 100644 --- a/grails-events/rxjava/build.gradle +++ b/grails-events/rxjava/build.gradle @@ -48,7 +48,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-events/rxjava2/build.gradle b/grails-events/rxjava2/build.gradle index c7bef111a7..0697285af6 100644 --- a/grails-events/rxjava2/build.gradle +++ b/grails-events/rxjava2/build.gradle @@ -44,7 +44,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-events/rxjava3/build.gradle b/grails-events/rxjava3/build.gradle index a9c76f098f..040c9bb162 100644 --- a/grails-events/rxjava3/build.gradle +++ b/grails-events/rxjava3/build.gradle @@ -44,7 +44,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-events/spring/build.gradle b/grails-events/spring/build.gradle index 03ff6a9aa3..abdba35721 100644 --- a/grails-events/spring/build.gradle +++ b/grails-events/spring/build.gradle @@ -44,7 +44,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-events/transforms/build.gradle b/grails-events/transforms/build.gradle index 91019fbd9b..6a43d17adf 100644 --- a/grails-events/transforms/build.gradle +++ b/grails-events/transforms/build.gradle @@ -61,7 +61,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-fields/build.gradle b/grails-fields/build.gradle index 629653e952..c59422bdaf 100644 --- a/grails-fields/build.gradle +++ b/grails-fields/build.gradle @@ -60,7 +60,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-gsp/core/build.gradle b/grails-gsp/core/build.gradle index 0d5f91ae05..30362e0b1f 100644 --- a/grails-gsp/core/build.gradle +++ b/grails-gsp/core/build.gradle @@ -90,7 +90,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-gsp/grails-sitemesh3/build.gradle b/grails-gsp/grails-sitemesh3/build.gradle index 4faad9dc8e..385e051bba 100644 --- a/grails-gsp/grails-sitemesh3/build.gradle +++ b/grails-gsp/grails-sitemesh3/build.gradle @@ -82,7 +82,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-gsp/grails-taglib/build.gradle b/grails-gsp/grails-taglib/build.gradle index a02c434bca..fdb81e6d1c 100644 --- a/grails-gsp/grails-taglib/build.gradle +++ b/grails-gsp/grails-taglib/build.gradle @@ -81,7 +81,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-gsp/grails-web-gsp-taglib/build.gradle b/grails-gsp/grails-web-gsp-taglib/build.gradle index 0f638256f7..6c2deb3629 100644 --- a/grails-gsp/grails-web-gsp-taglib/build.gradle +++ b/grails-gsp/grails-web-gsp-taglib/build.gradle @@ -60,7 +60,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-gsp/grails-web-gsp/build.gradle b/grails-gsp/grails-web-gsp/build.gradle index 6a1f058881..ffc612da76 100644 --- a/grails-gsp/grails-web-gsp/build.gradle +++ b/grails-gsp/grails-web-gsp/build.gradle @@ -128,7 +128,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-gsp/grails-web-jsp/build.gradle b/grails-gsp/grails-web-jsp/build.gradle index 53f143b0e5..63dbc6b172 100644 --- a/grails-gsp/grails-web-jsp/build.gradle +++ b/grails-gsp/grails-web-jsp/build.gradle @@ -109,7 +109,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-gsp/grails-web-taglib/build.gradle b/grails-gsp/grails-web-taglib/build.gradle index d534aaea50..1f9d94d0fa 100644 --- a/grails-gsp/grails-web-taglib/build.gradle +++ b/grails-gsp/grails-web-taglib/build.gradle @@ -113,7 +113,6 @@ compileGroovy.doLast { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-gsp/plugin/build.gradle b/grails-gsp/plugin/build.gradle index f816af05b1..9f21c86b1d 100644 --- a/grails-gsp/plugin/build.gradle +++ b/grails-gsp/plugin/build.gradle @@ -182,7 +182,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-i18n/build.gradle b/grails-i18n/build.gradle index 82317701f9..a07554dfbb 100644 --- a/grails-i18n/build.gradle +++ b/grails-i18n/build.gradle @@ -64,7 +64,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') } \ No newline at end of file diff --git a/grails-interceptors/build.gradle b/grails-interceptors/build.gradle index f00ed0f708..9e74dd99d2 100644 --- a/grails-interceptors/build.gradle +++ b/grails-interceptors/build.gradle @@ -63,7 +63,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-logging/build.gradle b/grails-logging/build.gradle index eeb78f7ce2..075f390df5 100644 --- a/grails-logging/build.gradle +++ b/grails-logging/build.gradle @@ -54,7 +54,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-mimetypes/build.gradle b/grails-mimetypes/build.gradle index 9ab15b0227..127f78d775 100644 --- a/grails-mimetypes/build.gradle +++ b/grails-mimetypes/build.gradle @@ -62,7 +62,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-rest-transforms/build.gradle b/grails-rest-transforms/build.gradle index 886b87cf8e..fa3402b68c 100644 --- a/grails-rest-transforms/build.gradle +++ b/grails-rest-transforms/build.gradle @@ -74,7 +74,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-scaffolding/build.gradle b/grails-scaffolding/build.gradle index aec01e1797..b964c29d0d 100644 --- a/grails-scaffolding/build.gradle +++ b/grails-scaffolding/build.gradle @@ -44,7 +44,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-services/build.gradle b/grails-services/build.gradle index 70b5e73de1..47b9df936c 100644 --- a/grails-services/build.gradle +++ b/grails-services/build.gradle @@ -65,7 +65,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') } \ No newline at end of file diff --git a/grails-shell-cli/build.gradle b/grails-shell-cli/build.gradle index 939ddc768a..48d5fc08c2 100644 --- a/grails-shell-cli/build.gradle +++ b/grails-shell-cli/build.gradle @@ -27,45 +27,10 @@ plugins { version = projectVersion group = 'org.apache.grails' -application { - mainClass = 'org.grails.cli.GrailsCli' -} +configurations.register('shellCliDependencies').configure { + it.transitive = true -configurations { - // This is a workaround that can optimize the performance of the Shell CLI by reducing the length of the CLASSPATH, - // while also solving the problem of the length limit of command line parameters in the Windows environment - // This can be removed when we solve the dependencies of grails-bootstrap, grails-shell-cli - runtimeClasspath { - exclude group: 'commons-codec', module: 'commons-codec' - exclude group: 'com.github.ben-manes.caffeine', module: 'caffeine' - exclude group: 'jakarta.annotation', module: 'jakarta.annotation-api' - exclude group: 'jakarta.inject', module: 'jakarta.inject-api' - exclude group: 'javax.annotation', module: 'javax.annotation-api' - exclude group: 'javax.inject', module: 'javax.inject' - exclude group: 'javax.persistence', module: 'javax.persistence-api' - exclude group: 'javax.transaction', module: 'javax.transaction-api' - exclude group: 'junit', module: 'junit' - exclude group: 'io.micrometer', module: 'micrometer-observation' - exclude group: 'io.micrometer', module: 'micrometer-commons' - exclude group: 'org.checkerframework', module: 'checker-qual' - exclude group: 'org.apache.ant', module: 'ant-antlr' - exclude group: 'org.apache.ant', module: 'ant-junit' - exclude group: 'org.apache.commons', module: 'commons-compress' - exclude group: 'org.apache.groovy', module: 'groovy-groovydoc' - exclude group: 'org.apache.groovy', module: 'groovy-jmx' - exclude group: 'org.codehaus.plexus', module: 'plexus-classworlds' - exclude group: 'org.codehaus.plexus', module: 'plexus-component-annotations' - exclude group: 'org.codehaus.plexus', module: 'plexus-sec-dispatcher' - exclude group: 'org.hamcrest', module: 'hamcrest' - exclude group: 'org.hamcrest', module: 'hamcrest-core' - exclude group: 'org.javassist', module: 'javassist' - exclude group: 'org.springframework', module: 'spring-aop' - exclude group: 'org.springframework', module: 'spring-expression' - exclude group: 'org.springframework', module: 'spring-jcl' - exclude group: 'org.springframework', module: 'spring-tx' - exclude group: 'org.springframework', module: 'spring-web' - exclude group: 'org.springframework.boot', module: 'spring-boot-autoconfigure' - } + configurations.runtimeClasspath.extendsFrom(it) } dependencies { @@ -144,13 +109,49 @@ dependencies { // Required by Spock's Mocking testRuntimeOnly 'net.bytebuddy:byte-buddy' testImplementation 'org.objenesis:objenesis' + + // any project that should be included in the end distribution should be included here + // historically these were the included projects so we have trimmed them back down to pre7.0 + shellCliDependencies project(':grails-codecs-core') + shellCliDependencies project(':grails-codecs') + shellCliDependencies project(':grails-console') + shellCliDependencies project(':grails-controllers') + shellCliDependencies project(':grails-converters') + shellCliDependencies project(':grails-core') + shellCliDependencies project(':grails-databinding-core') + shellCliDependencies project(':grails-datasource') + shellCliDependencies project(':grails-domain-class') + shellCliDependencies project(':grails-i18n') + shellCliDependencies project(':grails-interceptors') + shellCliDependencies project(':grails-mimetypes') + shellCliDependencies project(':grails-rest-transforms') + shellCliDependencies project(':grails-services') + shellCliDependencies project(':grails-test-core') + shellCliDependencies project(':grails-testing-support-core') + shellCliDependencies project(':grails-url-mappings') + shellCliDependencies project(':grails-validation') + shellCliDependencies project(':grails-web-boot') + shellCliDependencies project(':grails-web-common') + shellCliDependencies project(':grails-web-core') + shellCliDependencies project(':grails-web-databinding') + shellCliDependencies project(':grails-web-url-mappings') } apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') -} \ No newline at end of file +} + +extensions.configure(JavaApplication) { + it.applicationName = 'grails' + it.mainClass = 'org.grails.cli.GrailsCli' + it.applicationDefaultJvmArgs = ['-XX:+TieredCompilation', '-XX:TieredStopAtLevel=1', '-XX:CICompilerCount=3'] + it.applicationDistribution.with { + it.from(rootProject.layout.projectDirectory.file('LICENSE')) { it.into '' } + it.from(rootProject.layout.projectDirectory.file('NOTICE')) { it.into '' } + it.from(rootProject.layout.projectDirectory.file('INSTALL')) { it.into '' } + } +} diff --git a/grails-spring/build.gradle b/grails-spring/build.gradle index 399628d36b..91b1a53d40 100644 --- a/grails-spring/build.gradle +++ b/grails-spring/build.gradle @@ -58,7 +58,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') } \ No newline at end of file diff --git a/grails-test-core/build.gradle b/grails-test-core/build.gradle index c406b28c0b..14b625c5e3 100644 --- a/grails-test-core/build.gradle +++ b/grails-test-core/build.gradle @@ -85,7 +85,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') } \ No newline at end of file diff --git a/grails-testing-support-core/build.gradle b/grails-testing-support-core/build.gradle index 7f75bac244..e508918187 100644 --- a/grails-testing-support-core/build.gradle +++ b/grails-testing-support-core/build.gradle @@ -75,7 +75,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-testing-support-web/build.gradle b/grails-testing-support-web/build.gradle index c088969a42..41509a8040 100755 --- a/grails-testing-support-web/build.gradle +++ b/grails-testing-support-web/build.gradle @@ -46,7 +46,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-url-mappings/build.gradle b/grails-url-mappings/build.gradle index cf83b41e71..7b3f7144a8 100644 --- a/grails-url-mappings/build.gradle +++ b/grails-url-mappings/build.gradle @@ -65,7 +65,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') } \ No newline at end of file diff --git a/grails-validation/build.gradle b/grails-validation/build.gradle index f13287c6be..d3a7c7f2f2 100644 --- a/grails-validation/build.gradle +++ b/grails-validation/build.gradle @@ -63,7 +63,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-views-core/build.gradle b/grails-views-core/build.gradle index efe57fd776..b97851c866 100644 --- a/grails-views-core/build.gradle +++ b/grails-views-core/build.gradle @@ -53,7 +53,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-views-gson/build.gradle b/grails-views-gson/build.gradle index fbd3b5818f..e81f06530c 100644 --- a/grails-views-gson/build.gradle +++ b/grails-views-gson/build.gradle @@ -65,7 +65,6 @@ tasks.named('sourcesJar', Jar).configure { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-views-markup/build.gradle b/grails-views-markup/build.gradle index 5bb3623f01..99a32997c7 100644 --- a/grails-views-markup/build.gradle +++ b/grails-views-markup/build.gradle @@ -54,7 +54,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-web-boot/build.gradle b/grails-web-boot/build.gradle index 29899285f2..c2fe2aaf83 100644 --- a/grails-web-boot/build.gradle +++ b/grails-web-boot/build.gradle @@ -68,7 +68,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-web-common/build.gradle b/grails-web-common/build.gradle index 782cb4b137..703eaac6ce 100644 --- a/grails-web-common/build.gradle +++ b/grails-web-common/build.gradle @@ -78,7 +78,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-web-core/build.gradle b/grails-web-core/build.gradle index 9a8c1ab9e2..027588c513 100644 --- a/grails-web-core/build.gradle +++ b/grails-web-core/build.gradle @@ -72,7 +72,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-web-databinding/build.gradle b/grails-web-databinding/build.gradle index 9883dd71aa..1d6e8d4e7f 100644 --- a/grails-web-databinding/build.gradle +++ b/grails-web-databinding/build.gradle @@ -71,7 +71,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-web-mvc/build.gradle b/grails-web-mvc/build.gradle index 99b7e8f8fe..6f9bad0ba5 100644 --- a/grails-web-mvc/build.gradle +++ b/grails-web-mvc/build.gradle @@ -63,7 +63,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle') diff --git a/grails-web-url-mappings/build.gradle b/grails-web-url-mappings/build.gradle index b1e828c1de..f9b3bf36ef 100644 --- a/grails-web-url-mappings/build.gradle +++ b/grails-web-url-mappings/build.gradle @@ -76,7 +76,6 @@ dependencies { apply { // java-configuration must be applied first since tasks are now lazy registered from rootProject.layout.projectDirectory.file('gradle/java-config.gradle') - from rootProject.layout.projectDirectory.file('gradle/assemble-config.gradle') from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle') from rootProject.layout.projectDirectory.file('gradle/publish-config.gradle') from rootProject.layout.projectDirectory.file('gradle/test-config.gradle')