Skip to content

Commit 4095537

Browse files
committed
Handle deprecated Gradle task declarations
1 parent d116db6 commit 4095537

File tree

4 files changed

+52
-29
lines changed

4 files changed

+52
-29
lines changed

build.gradle

Lines changed: 40 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -89,56 +89,81 @@ subprojects {
8989
'-Ywarn-adapted-args'
9090
]
9191

92-
tasks.withType(ScalaCompile) {
92+
tasks.withType(ScalaCompile).configureEach {
9393
options.encoding = 'UTF-8'
9494
scalaCompileOptions.additionalParameters = scalacParameters
9595
}
9696

97-
tasks.withType(ScalaDoc) {
97+
tasks.withType(ScalaDoc).configureEach {
9898
scalaDocOptions.additionalParameters = scalacParameters
9999
}
100100

101-
task sourceJar(type: Jar) {
101+
tasks.register('sourceJar', Jar) {
102102
archiveClassifier = 'sources'
103103
from(sourceSets.main.allSource)
104104
}
105105

106-
task docJar(type: Jar) {
106+
tasks.register('docJar', Jar) {
107107
dependsOn tasks.scaladoc
108108
archiveClassifier = 'javadoc'
109109
from(tasks.scaladoc.destinationDir)
110110
}
111111

112-
task testJar(type: Jar) {
112+
tasks.register('testJar', Jar) {
113113
archiveClassifier = 'tests'
114114
from(sourceSets.test.output)
115115
}
116116

117-
tasks.withType(Jar) {
117+
tasks.withType(Jar).configureEach {
118118
from(tasks.generateLicensesFiles) {
119119
into("META-INF/")
120120
}
121121
}
122122

123-
task licenseFile {
123+
tasks.register('licenseFile') {
124124
outputs.file(project.parent.file('LICENSE.txt'))
125125
}
126126

127-
task dependencySearch(type: DependencyInsightReportTask) {
127+
tasks.register('dependencySearch', DependencyInsightReportTask) {
128128
description = 'Searches all projects for a dependency'
129129
group = 'help'
130130
}
131131

132-
task runApp {
132+
// TODO: it looks like this is only used for `:morpheus-examples` - we don't need it for all sub-projects 🤔
133+
// see: README.md:163
134+
tasks.register('runApp', JavaExec) {
133135
dependsOn tasks.classes
134136
group = 'run'
135137
description = 'Run a custom Scala app (use -PmainClass=com.my.package.App)'
136-
doLast {
137-
javaexec {
138-
classpath = sourceSets.main.runtimeClasspath
139-
main = project.getProperty("mainClass")
140-
}
141-
}
138+
139+
classpath = sourceSets.main.runtimeClasspath
140+
mainClass = project.getProperty("mainClass")
141+
}
142+
143+
tasks.named('runApp').configure {
144+
jvmArgs = [
145+
'-Xmx2g',
146+
'-Dconfig.file=app.conf',
147+
'-XX:+IgnoreUnrecognizedVMOptions',
148+
'--add-exports=java.base/sun.nio.ch=ALL-UNNAMED',
149+
'--add-opens=java.base/java.lang.invoke=ALL-UNNAMED',
150+
'--add-opens=java.base/java.lang=ALL-UNNAMED',
151+
'--add-opens=java.base/java.lang.invoke=ALL-UNNAMED',
152+
'--add-opens=java.base/java.lang.reflect=ALL-UNNAMED',
153+
'--add-opens=java.base/java.io=ALL-UNNAMED',
154+
'--add-opens=java.base/java.net=ALL-UNNAMED',
155+
'--add-opens=java.base/java.nio=ALL-UNNAMED',
156+
'--add-opens=java.base/java.util=ALL-UNNAMED',
157+
'--add-opens=java.base/java.util.concurrent=ALL-UNNAMED',
158+
'--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED',
159+
'--add-opens=java.base/jdk.internal.ref=ALL-UNNAMED',
160+
'--add-opens=java.base/sun.nio.ch=ALL-UNNAMED',
161+
'--add-opens=java.base/sun.nio.cs=ALL-UNNAMED',
162+
'--add-opens=java.base/sun.security.action=ALL-UNNAMED',
163+
'--add-opens=java.base/sun.util.calendar=ALL-UNNAMED',
164+
'--add-opens=java.security.jgss/sun.security.krb5=ALL-UNNAMED',
165+
'-Djdk.reflect.useDirectMethodHandle=false'
166+
]
142167
}
143168

144169
// copied from https://stackoverflow.com/a/38058671/568723

build.publishing.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,15 +86,15 @@ subprojects {
8686

8787
if (project.name != "okapi-shade") {
8888
// Convenience for quick publish to maven local
89-
task devPublish {
89+
tasks.register('devPublish') {
9090
group = 'publishing'
9191
description = 'Publishes main jars to the local Maven repository.'
9292
dependsOn tasks.publishDevPublicationToMavenLocal
9393
}
9494
}
9595

9696
// Task run by teamcity
97-
task ci {
97+
tasks.register('ci') {
9898
dependsOn tasks.check
9999
dependsOn { tasks.publishFullPublicationToBuildDirRepository }
100100
}

documentation/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
group = "${group}.documentation"
22

3-
task asciidocJar(type: Jar) {
3+
tasks.register('asciidocJar', Jar) {
44
group = 'documentation'
55
description = 'Package asciidoc source files.'
66
archiveClassifier = 'asciidoc'
77
from("asciidoc")
88
}
99

10-
task aggregatedScalaDoc(type: ScalaDoc) {
10+
tasks.register('aggregatedScalaDoc', ScalaDoc) {
1111
ext.fromProjects = [
1212
project(':okapi-api'),
1313
project(':morpheus-spark-cypher'),
@@ -25,7 +25,7 @@ task aggregatedScalaDoc(type: ScalaDoc) {
2525
scalaDocOptions.additionalParameters = scalacParameters
2626
}
2727

28-
task aggregatedScalaDocJar(type: Jar) {
28+
tasks.register('aggregatedScalaDocJar', Jar) {
2929
archiveClassifier = 'javadoc'
3030
from tasks.aggregatedScalaDoc
3131
}

morpheus-tck/build.gradle

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,16 @@ dependencies {
1414
}
1515

1616
// split scenario name / key-words with | --> debugTCKScenarios -Pscenarios = 'sc1|sc2|..'
17-
task debugTCKScenarios() {
17+
tasks.register('debugTCKScenarios', JavaExec) {
1818
description = 'Generates scala-test from TCK scenarios (keywords of the scenario names suffice)'
1919
group = 'generator'
20+
dependsOn sourceSets.generator.runtimeClasspath
21+
2022
def outPath = project.findProperty('outDir') ?: 'src/test/scala/org/opencypher/morpheus/testing/'
2123
def resDir = project.findProperty('resDir') ?: 'src/test/resources/'
2224
def scenarios = project.findProperty('scenarios') ?: ''
23-
dependsOn sourceSets.generator.runtimeClasspath
24-
doLast {
25-
javaexec {
26-
classpath = sourceSets.generator.runtimeClasspath
27-
main = 'org.opencypher.morpheus.testing.MorpheusTestGenerator'
28-
args = [outPath,resDir,scenarios]
29-
}
30-
}
25+
26+
mainClass = 'org.opencypher.morpheus.testing.MorpheusTestGenerator'
27+
classpath = sourceSets.generator.runtimeClasspath
28+
args = [outPath, resDir, scenarios]
3129
}

0 commit comments

Comments
 (0)