hibernate-orm/build.gradle

96 lines
2.6 KiB
Groovy

/*
* Hibernate, Relational Persistence for Idiomatic Java
*
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
*/
buildscript {
// repositories {
// mavenCentral()
// }
dependencies {
// classpath 'org.asciidoctor:asciidoctor-gradle-plugin:1.5.7'
classpath buildscriptLibs.forbiddenapis
classpath 'org.junit.platform:junit-platform-gradle-plugin:1.0.1'
}
}
plugins {
id 'org.hibernate.build.xjc-jakarta' version '2.0.3' apply false
id "org.hibernate.build.version-injection" version "2.0.0" apply false
id 'org.hibernate.matrix-test' version '3.1.1' apply false
id 'org.hibernate.orm.database-service' apply false
id 'biz.aQute.bnd' version '7.0.0' apply false
id 'com.diffplug.spotless' version '6.25.0'
id 'org.checkerframework' version '0.6.40'
id 'org.hibernate.orm.build.jdks'
id 'io.github.gradle-nexus.publish-plugin' version '2.0.0'
id 'idea'
id 'org.jetbrains.gradle.plugin.idea-ext' version '1.0'
id 'eclipse'
id "com.dorongold.task-tree" version "2.1.1"
}
apply from: file( 'gradle/module.gradle' )
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Release Task
tasks.register('release') {
description = "The task performed when we are performing a release build. Relies on " +
"the fact that subprojects will appropriately define a release task " +
"themselves if they have any release-related activities to perform"
doFirst {
def javaVersionsInUse = jdkVersions.allVersions
if (javaVersionsInUse != [JavaLanguageVersion.of(17)].toSet()) {
throw new IllegalStateException("Please use JDK 17 to perform the release. Currently using: ${javaVersionsInUse}")
}
}
}
nexusPublishing {
repositories {
sonatype()
}
}
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// CI Build Task
tasks.register('ciBuild') {
description = "The task performed when one of the 'main' jobs are triggered on the " +
"CI server. Just as above, relies on the fact that subprojects will " +
"appropriately define a release task themselves if they have any tasks " +
"which should be performed from these CI jobs"
}
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Misc...
wrapper {
// To upgrade the version of gradle used in the wrapper, run:
// ./gradlew wrapper --gradle-version NEW_VERSION
// uncomment locally if you need to debug build scripts.
// in such cases, having the sources helps
//distributionType = Wrapper.DistributionType.ALL
}
idea {
module {
name = "hibernate-orm"
}
}