rahulshishodia opened a new pull request, #15382:
URL: https://github.com/apache/grails-core/pull/15382
Reference: `org.apache.grails.buildsrc.CompilePlugin#configureCompiler`
Issue: #13028
# Sample `build.gradle` file
```groovy
buildscript {
repositories {
maven {
url = 'file:/Users/rahul/Dev/grails-core/build/local-maven/'
}
mavenCentral()
maven {
url = 'https://repo.grails.org/grails/restricted'
}
maven {
url = 'https://repository.apache.org/content/groups/snapshots'
content {
includeVersionByRegex('org[.]apache[.]grails.*', '.*',
'.*-SNAPSHOT')
}
content {
includeVersionByRegex('org[.]apache[.]groovy.*', 'groovy.*',
'.*-SNAPSHOT')
}
mavenContent {
snapshotsOnly()
}
}
maven {
url = 'https://repository.apache.org/content/groups/staging'
content {
includeVersionByRegex('org[.]apache[.]grails[.]gradle',
'grails-publish', '.*')
}
content {
includeVersionByRegex('org[.]apache[.]groovy.*', 'groovy.*',
'.*')
}
mavenContent {
releasesOnly()
}
}
}
dependencies { // Not Published to Gradle Plugin Portal
classpath "cloud.wondrify:asset-pipeline-gradle"
classpath platform("org.apache.grails:grails-bom:$grailsVersion")
classpath "org.apache.grails:grails-data-hibernate5"
classpath "org.apache.grails:grails-gradle-plugins"
}
}
plugins {
id "war"
id "idea"
id "eclipse"
}
// Not Published to Gradle Plugin Portal
apply plugin: "org.apache.grails.gradle.grails-web"
apply plugin: "org.apache.grails.gradle.grails-gsp"
apply plugin: "cloud.wondrify.asset-pipeline"
group = "example.grails"
repositories {
maven {
url = 'file:/Users/rahul/Dev/grails-core/build/local-maven/'
}
mavenCentral()
maven {
url = 'https://repo.grails.org/grails/restricted'
}
maven {
url = 'https://repository.apache.org/content/groups/snapshots'
content {
includeVersionByRegex('org[.]apache[.]grails.*', '.*',
'.*-SNAPSHOT')
}
content {
includeVersionByRegex('org[.]apache[.]groovy.*', 'groovy.*',
'.*-SNAPSHOT')
}
mavenContent {
snapshotsOnly()
}
}
maven {
url = 'https://repository.apache.org/content/groups/staging'
content {
includeVersionByRegex('org[.]apache[.]grails[.]gradle',
'grails-publish', '.*')
}
content {
includeVersionByRegex('org[.]apache[.]groovy.*', 'groovy.*', '.*')
}
mavenContent {
releasesOnly()
}
}
}
dependencies {
profile "org.apache.grails.profiles:web"
developmentOnly "org.springframework.boot:spring-boot-devtools" //
Spring Boot DevTools may cause performance slowdowns or compatibility issues on
larger applications
testAndDevelopmentOnly "org.webjars.npm:bootstrap"
testAndDevelopmentOnly "org.webjars.npm:bootstrap-icons"
testAndDevelopmentOnly "org.webjars.npm:jquery"
implementation platform("org.apache.grails:grails-bom:$grailsVersion")
implementation "org.apache.grails:grails-core"
implementation "org.apache.grails:grails-data-hibernate5"
implementation "org.apache.grails:grails-databinding"
implementation "org.apache.grails:grails-events"
implementation "org.apache.grails:grails-gsp"
implementation "org.apache.grails:grails-interceptors"
implementation "org.apache.grails:grails-layout"
implementation "org.apache.grails:grails-logging"
implementation "org.apache.grails:grails-rest-transforms"
implementation "org.apache.grails:grails-scaffolding"
implementation "org.apache.grails:grails-services"
implementation "org.apache.grails:grails-url-mappings"
implementation "org.apache.grails:grails-web-boot"
implementation "org.springframework.boot:spring-boot-autoconfigure"
implementation "org.springframework.boot:spring-boot-starter"
implementation "org.springframework.boot:spring-boot-starter-actuator"
implementation "org.springframework.boot:spring-boot-starter-logging"
implementation "org.springframework.boot:spring-boot-starter-tomcat"
implementation "org.springframework.boot:spring-boot-starter-validation"
console "org.apache.grails:grails-console"
runtimeOnly "cloud.wondrify:asset-pipeline-grails"
runtimeOnly "com.h2database:h2"
runtimeOnly "com.zaxxer:HikariCP"
runtimeOnly "org.fusesource.jansi:jansi"
integrationTestImplementation
testFixtures("org.apache.grails:grails-geb")
testImplementation "org.apache.grails:grails-testing-support-datamapping"
testImplementation "org.apache.grails:grails-testing-support-web"
testImplementation "org.spockframework:spock-core"
}
compileJava.options.release = 17
tasks.withType(Test).configureEach {
useJUnitPlatform()
}
assets {
excludes = [
'webjars/jquery/**',
'webjars/bootstrap/**',
'webjars/bootstrap-icons/**'
]
includes = [
'webjars/jquery/*/dist/jquery.js',
'webjars/bootstrap/*/dist/js/bootstrap.bundle.js',
'webjars/bootstrap/*/dist/css/bootstrap.css',
'webjars/bootstrap-icons/*/font/bootstrap-icons.css',
'webjars/bootstrap-icons/*/font/fonts/*',
]
}
tasks.withType(GroovyCompile).configureEach {
// encoding needs to be the same since it's different across platforms
groovyOptions.encoding = 'UTF_8'
// Preserve method parameter names in Groovy/Java classes for IDE
parameter hints & bean reflection metadata.
groovyOptions.parameters = true
// encoding needs to be the same since it's different across platforms
options.encoding = 'UTF_8'
// https://github.com/apache/grails-core/issues/15321
groovyOptions.optimizationOptions.indy = false
}
tasks.withType(JavaCompile).configureEach {
// Preserve method parameter names in Groovy/Java classes for IDE
parameter hints & bean reflection metadata.
options.compilerArgs.add('-parameters')
// encoding needs to be the same since it's different across platforms
options.encoding = 'UTF_8'
}
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]