build.gradle.kts: moved module-info and java9 related configuration to precompiled script plugins

This commit is contained in:
Karl Tauber
2020-05-09 10:55:12 +02:00
parent d79a31cc79
commit 01cfe33865
5 changed files with 137 additions and 66 deletions

View File

@@ -16,56 +16,22 @@
plugins {
`java-library`
`flatlaf-module-info`
`flatlaf-java9`
`maven-publish`
id( "com.jfrog.bintray" )
id( "com.jfrog.artifactory" )
}
if( JavaVersion.current() >= JavaVersion.VERSION_1_9 ) {
sourceSets {
create( "java9" ) {
java {
setSrcDirs( listOf( "src/main/java9" ) )
}
}
create( "module-info" ) {
java {
// include "src/main/java" here to get compile errors if classes are
// used from other modules that are not specified in module dependencies
setSrcDirs( listOf( "src/main/module-info", "src/main/java" ) )
}
}
}
}
java {
withSourcesJar()
withJavadocJar()
}
tasks {
if( JavaVersion.current() >= JavaVersion.VERSION_1_9 ) {
named<JavaCompile>( "compileModuleInfoJava" ) {
sourceCompatibility = "9"
targetCompatibility = "9"
}
}
jar {
archiveBaseName.set( "flatlaf" )
if( JavaVersion.current() >= JavaVersion.VERSION_1_9 ) {
manifest.attributes( "Multi-Release" to "true" )
into( "META-INF/versions/9" ) {
from( sourceSets["java9"].output )
}
from( sourceSets["module-info"].output ) {
include( "module-info.class" )
}
}
doLast {
ReorderJarEntries.reorderJarEntries( outputs.files.singleFile );
}