Skip to content

Commit dc28786

Browse files
authored
Gradle build: cleanup of dependency resolution and consolidation of dependency versions (#13484)
1 parent 8f50976 commit dc28786

File tree

72 files changed

+2267
-1039
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+2267
-1039
lines changed

buildSrc/build.gradle renamed to build-tools/build-infra/build.gradle

Lines changed: 31 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,30 +15,50 @@
1515
* limitations under the License.
1616
*/
1717

18-
repositories {
19-
mavenCentral()
18+
plugins {
19+
id "java-gradle-plugin"
20+
alias(deps.plugins.spotless) apply false
21+
alias(deps.plugins.forbiddenapis) apply false
2022
}
2123

22-
ext {
23-
// Minimum Java version required to compile buildSrc.
24-
minJavaVersion = JavaVersion.VERSION_21
24+
repositories {
25+
mavenCentral()
2526
}
2627

28+
group = "org.apache"
2729

2830
// Make sure the build environment is consistent.
29-
apply from: file('../gradle/validation/check-environment.gradle')
31+
apply from: file('../../gradle/conventions.gradle')
32+
apply from: file('../../gradle/validation/check-environment.gradle')
33+
34+
// Add spotless/ tidy.
35+
tasks.register("checkJdkInternalsExportedToGradle") {}
36+
apply from: file('../../gradle/validation/spotless.gradle')
37+
apply from: file('../../gradle/validation/forbidden-apis.gradle')
3038

31-
// Load common buildSrc and script deps.
32-
apply from: file("scriptDepVersions.gradle")
39+
java {
40+
sourceCompatibility = JavaVersion.toVersion(deps.versions.minJava.get())
41+
targetCompatibility = JavaVersion.toVersion(deps.versions.minJava.get())
42+
}
43+
44+
gradlePlugin {
45+
automatedPublishing = false
46+
47+
plugins {
48+
buildInfra {
49+
id = 'lucene.build-infra'
50+
implementationClass = 'org.apache.lucene.gradle.buildinfra.BuildInfraPlugin'
51+
}
52+
}
53+
}
3354

3455
dependencies {
3556
implementation gradleApi()
3657
implementation localGroovy()
37-
38-
implementation "commons-codec:commons-codec:${scriptDepVersions['commons-codec']}"
58+
implementation deps.commons.codec
3959
}
4060

41-
if (!rootProject.hasJavaFlightRecorder) {
61+
if (!hasJavaFlightRecorder) {
4262
logger.warn('Module jdk.jfr is not available; skipping compilation of Java Flight Recorder support.')
4363
tasks.named('compileJava').configure {
4464
exclude('**/ProfileResults.java')

dev-tools/missing-doclet/build.gradle renamed to build-tools/build-infra/settings.gradle

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,12 @@
1515
* limitations under the License.
1616
*/
1717

18-
plugins {
19-
id 'java-library'
20-
}
21-
22-
version = "1.0.0-SNAPSHOT"
23-
group = "org.apache.lucene.tools"
24-
description = 'Doclet-based javadoc validation'
25-
26-
sourceCompatibility = JavaVersion.VERSION_21
27-
targetCompatibility = JavaVersion.VERSION_21
18+
rootProject.name = 'build-infra'
2819

29-
tasks.withType(JavaCompile) {
30-
options.compilerArgs += ["--release", targetCompatibility.toString()]
31-
options.encoding = "UTF-8"
20+
dependencyResolutionManagement {
21+
versionCatalogs {
22+
deps {
23+
from(files('../../versions.toml'))
24+
}
25+
}
3226
}

buildSrc/src/main/java/org/apache/lucene/gradle/Checksum.java renamed to build-tools/build-infra/src/main/java/org/apache/lucene/gradle/Checksum.java

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@
2727

2828
package org.apache.lucene.gradle;
2929

30+
import java.io.File;
31+
import java.io.IOException;
32+
import java.nio.charset.StandardCharsets;
33+
import java.nio.file.Files;
34+
import java.util.Locale;
3035
import org.apache.commons.codec.digest.DigestUtils;
3136
import org.gradle.api.DefaultTask;
3237
import org.gradle.api.GradleException;
@@ -39,16 +44,10 @@
3944
import org.gradle.work.Incremental;
4045
import org.gradle.work.InputChanges;
4146

42-
import java.io.File;
43-
import java.io.IOException;
44-
import java.nio.charset.StandardCharsets;
45-
import java.nio.file.Files;
46-
import java.util.Locale;
47-
4847
public class Checksum extends DefaultTask {
4948
private FileCollection files;
5049
private File outputDir;
51-
private Algorithm algorithm;
50+
private Algorithm algorithm = Algorithm.SHA512;
5251

5352
public enum Algorithm {
5453
MD5(new DigestUtils(DigestUtils.getMd5Digest())),
@@ -190,6 +189,8 @@ private FileCollection allPossibleChecksumFiles() {
190189

191190
private FileCollection filesFor(final Algorithm algo) {
192191
return getProject()
193-
.fileTree(getOutputDir(), files -> files.include("**/*." + algo.toString().toLowerCase(Locale.ROOT)));
192+
.fileTree(
193+
getOutputDir(),
194+
files -> files.include("**/*." + algo.toString().toLowerCase(Locale.ROOT)));
194195
}
195196
}

0 commit comments

Comments
 (0)