101 lines
3.5 KiB
Groovy
101 lines
3.5 KiB
Groovy
/*
|
|
* (c) Copyright 2018 Palantir Technologies Inc. All rights reserved.
|
|
*
|
|
* Licensed 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
|
|
*
|
|
* http://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 net.ltgt.gradle.errorprone.CheckSeverity
|
|
|
|
buildscript {
|
|
repositories {
|
|
mavenCentral() { metadataSources { mavenPom(); ignoreGradleMetadataRedirection() } }
|
|
gradlePluginPortal() { metadataSources { mavenPom(); ignoreGradleMetadataRedirection() } }
|
|
}
|
|
|
|
dependencies {
|
|
classpath 'com.palantir.jakartapackagealignment:jakarta-package-alignment:0.5.0'
|
|
classpath 'com.palantir.gradle.jdks:gradle-jdks:0.30.0'
|
|
classpath 'com.palantir.gradle.jdkslatest:gradle-jdks-latest:0.7.0'
|
|
classpath 'com.gradle.publish:plugin-publish-plugin:1.1.0'
|
|
classpath 'com.palantir.baseline:gradle-baseline-java:4.188.0'
|
|
classpath 'com.palantir.gradle.consistentversions:gradle-consistent-versions:2.12.0'
|
|
classpath 'com.palantir.gradle.externalpublish:gradle-external-publish-plugin:1.11.0'
|
|
classpath 'com.palantir.gradle.gitversion:gradle-git-version:1.0.0'
|
|
classpath 'com.palantir.javaformat:gradle-palantir-java-format:2.28.0'
|
|
classpath 'gradle.plugin.org.inferred:gradle-processors:3.7.0'
|
|
}
|
|
}
|
|
allprojects {
|
|
apply plugin: 'com.palantir.jakarta-package-alignment'
|
|
}
|
|
|
|
apply plugin: 'java-gradle-plugin'
|
|
apply plugin: 'groovy'
|
|
apply plugin: 'idea'
|
|
|
|
apply plugin: 'com.palantir.baseline'
|
|
apply plugin: 'com.palantir.baseline-java-versions'
|
|
apply plugin: 'com.palantir.consistent-versions'
|
|
apply plugin: 'com.palantir.external-publish-gradle-plugin'
|
|
apply plugin: 'com.palantir.external-publish-jar'
|
|
apply plugin: 'com.palantir.git-version'
|
|
apply plugin: 'com.palantir.java-format'
|
|
apply plugin: 'com.palantir.jdks.latest'
|
|
apply plugin: 'org.inferred.processors'
|
|
|
|
group 'com.palantir.graal'
|
|
version gitVersion()
|
|
|
|
repositories {
|
|
mavenCentral() { metadataSources { mavenPom(); ignoreGradleMetadataRedirection() } }
|
|
}
|
|
|
|
dependencies {
|
|
implementation localGroovy()
|
|
implementation gradleApi()
|
|
|
|
testImplementation gradleTestKit()
|
|
testImplementation 'com.netflix.nebula:nebula-test'
|
|
testImplementation 'com.squareup.okhttp3:mockwebserver'
|
|
}
|
|
|
|
gradlePlugin {
|
|
plugins {
|
|
graal {
|
|
id = 'com.palantir.graal'
|
|
displayName = 'Palantir Graal Plugin'
|
|
implementationClass = 'com.palantir.gradle.graal.GradleGraalPlugin'
|
|
}
|
|
}
|
|
}
|
|
|
|
pluginBundle {
|
|
website = 'https://github.com/palantir/gradle-graal'
|
|
vcsUrl = 'https://github.com/palantir/gradle-graal'
|
|
description = 'A plugin for Gradle that adds tasks to download, extract and interact with GraalVM tooling.'
|
|
tags = ['graal', 'native-image']
|
|
}
|
|
|
|
tasks.withType(JavaCompile) {
|
|
options.compilerArgs += ['-Werror']
|
|
options.errorprone {
|
|
check("PreferSafeLogger", CheckSeverity.OFF)
|
|
check("PreferSafeLoggingPreconditions", CheckSeverity.OFF)
|
|
check("PreferSafeLoggableExceptions", CheckSeverity.OFF)
|
|
check("Slf4jLogsafeArgs", CheckSeverity.OFF)
|
|
}
|
|
}
|
|
|
|
javaVersions {
|
|
libraryTarget = 11
|
|
runtime = 17
|
|
}
|