try to get rid of cached module-info classes

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1906232 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
PJ Fanning 2022-12-27 18:45:15 +00:00
parent 98d51e4139
commit 78516f50dc
23 changed files with 32 additions and 227 deletions

View File

@ -821,19 +821,19 @@ task soLinkCheck() {
} }
var srcDep = [ var srcDep = [
':poi:cacheJava9', ':poi:compileJava9',
':poi:cacheTest9', ':poi:compileTest9',
':poi-ooxml-full:cacheJava9', ':poi-ooxml-full:compileJava9',
':poi-ooxml-lite-agent:cacheJava9', ':poi-ooxml-lite-agent:compileJava9',
':poi-ooxml:cacheJava9', ':poi-ooxml:compileJava9',
':poi-ooxml:cacheTest9', ':poi-ooxml:compileTest9',
':poi-scratchpad:cacheJava9', ':poi-scratchpad:compileJava9',
':poi-scratchpad:cacheTest9', ':poi-scratchpad:compileTest9',
':poi-excelant:cacheJava9', ':poi-excelant:compileJava9',
':poi-excelant:cacheTest9', ':poi-excelant:compileTest9',
':poi-examples:cacheJava9', ':poi-examples:compileJava9',
':poi-integration:cacheTest9', ':poi-integration:compileTest9',
':poi-ooxml-lite:cacheJava9', ':poi-ooxml-lite:compileJava9',
':poi-ooxml-lite:generateModuleInfo' ':poi-ooxml-lite:generateModuleInfo'
] ]

View File

@ -19,9 +19,7 @@ import java.util.regex.Pattern
sourceSets { sourceSets {
main { main {
if (jdkVersion > 8) { output.dir(JAVA9_OUT, builtBy: 'compileJava9')
output.dir(JAVA9_OUT, builtBy: 'cacheJava9')
}
} }
} }
@ -72,24 +70,11 @@ task compileJava9(type: JavaCompile) {
] ]
} }
task cacheJava9(type: Copy) {
dependsOn 'compileJava9'
from(file(JAVA9_OUT + VERSIONS9))
into(JAVA9_SRC)
}
jar { jar {
dependsOn cacheJava9 dependsOn compileJava9
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}")
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from JAVA9_SRC include '*.class'
}
}
manifest { manifest {
attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true') attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true')
} }

View File

@ -23,14 +23,10 @@ configurations {
sourceSets { sourceSets {
main { main {
if (jdkVersion > 8) { output.dir(JAVA9_OUT, builtBy: 'compileJava9')
output.dir(JAVA9_OUT, builtBy: 'cacheJava9')
}
} }
test { test {
if (jdkVersion > 8) { output.dir(TEST9_OUT, builtBy: 'compileTest9')
output.dir(TEST9_OUT, builtBy: 'cacheTest9')
}
} }
} }
@ -82,13 +78,6 @@ task compileJava9(type: JavaCompile) {
] ]
} }
task cacheJava9(type: Copy) {
dependsOn 'compileJava9'
from(file(JAVA9_OUT + VERSIONS9))
into(JAVA9_SRC)
}
task compileTest9(type: JavaCompile) { task compileTest9(type: JavaCompile) {
dependsOn 'compileTestJava', ':poi-ooxml:jar', ':poi-scratchpad:jar' dependsOn 'compileTestJava', ':poi-ooxml:jar', ':poi-scratchpad:jar'
@ -107,24 +96,11 @@ task compileTest9(type: JavaCompile) {
} }
task cacheTest9(type: Copy) {
dependsOn 'compileTest9'
from(file(TEST9_OUT + VERSIONS9))
into(TEST9_SRC)
}
jar { jar {
dependsOn cacheJava9 dependsOn compileJava9
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}")
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from JAVA9_SRC include '*.class'
}
}
manifest { manifest {
attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true') attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true')
} }
@ -146,19 +122,13 @@ sourcesJar {
// Create a separate jar for test-code to depend on it in other projects // Create a separate jar for test-code to depend on it in other projects
// See http://stackoverflow.com/questions/5144325/gradle-test-dependency // See http://stackoverflow.com/questions/5144325/gradle-test-dependency
task testJar(type: Jar, dependsOn: [ testClasses, cacheTest9 ] ) { task testJar(type: Jar, dependsOn: [ testClasses, compileTest9 ] ) {
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}-tests") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}-tests")
classifier 'tests' classifier 'tests'
// ignore second module-info.class from main // ignore second module-info.class from main
duplicatesStrategy = 'exclude' duplicatesStrategy = 'exclude'
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from TEST9_SRC include '*.class'
}
}
from sourceSets.test.output + sourceSets.main.output from sourceSets.test.output + sourceSets.main.output
manifest { manifest {

View File

@ -29,9 +29,7 @@ configurations {
sourceSets { sourceSets {
test { test {
if (jdkVersion > 8) { output.dir(TEST9_OUT, builtBy: 'compileTest9')
output.dir(TEST9_OUT, builtBy: 'cacheTest9')
}
if (IBMVM) { if (IBMVM) {
java { java {
exclude '**/HeapDump**' exclude '**/HeapDump**'
@ -121,13 +119,6 @@ task compileTest9(type: JavaCompile) {
} }
task cacheTest9(type: Copy) {
dependsOn 'compileTest9'
from(file(TEST9_OUT + VERSIONS9))
into(TEST9_SRC)
}
jar { jar {
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}")
@ -138,19 +129,13 @@ jar {
// Create a separate jar for test-code to depend on it in other projects // Create a separate jar for test-code to depend on it in other projects
// See http://stackoverflow.com/questions/5144325/gradle-test-dependency // See http://stackoverflow.com/questions/5144325/gradle-test-dependency
task testJar(type: Jar, dependsOn: [ testClasses, cacheTest9 ] ) { task testJar(type: Jar, dependsOn: [ testClasses, compileTest9 ] ) {
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}-tests") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}-tests")
classifier 'tests' classifier 'tests'
// ignore second module-info.class from main // ignore second module-info.class from main
duplicatesStrategy = 'exclude' duplicatesStrategy = 'exclude'
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from TEST9_SRC include '*.class'
}
}
from sourceSets.test.output + sourceSets.main.output from sourceSets.test.output + sourceSets.main.output
manifest { manifest {

View File

@ -26,9 +26,7 @@ sourceSets {
// TypeSystemHolder.class is in the resources // TypeSystemHolder.class is in the resources
output.dir(BEANS_RES, builtBy: 'generate_beans') output.dir(BEANS_RES, builtBy: 'generate_beans')
compileClasspath += files(BEANS_RES) compileClasspath += files(BEANS_RES)
if (jdkVersion > 8) { output.dir(JAVA9_OUT, builtBy: 'compileJava9')
output.dir(JAVA9_OUT, builtBy: 'cacheJava9')
}
java { java {
srcDirs = [BEANS_SRC] srcDirs = [BEANS_SRC]
} }
@ -73,13 +71,6 @@ task compileJava9(type: JavaCompile) {
] ]
} }
task cacheJava9(type: Copy) {
dependsOn 'compileJava9'
from(file(JAVA9_OUT + VERSIONS9))
into(JAVA9_SRC)
}
task copy_xsds(type: Copy) { task copy_xsds(type: Copy) {
from ('src/main/xmlschema/org/apache/poi/xdgf') from ('src/main/xmlschema/org/apache/poi/xdgf')
from ('src/main/xmlschema/org/apache/poi/schemas') { from ('src/main/xmlschema/org/apache/poi/schemas') {
@ -142,12 +133,6 @@ task sourceJar(type: Jar) {
jar { jar {
dependsOn 'sourceJar' dependsOn 'sourceJar'
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from JAVA9_SRC include '*.class'
}
}
manifest { manifest {
attributes ('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true') attributes ('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true')
} }

View File

@ -17,9 +17,7 @@
sourceSets { sourceSets {
main { main {
if (jdkVersion > 8) { output.dir(JAVA9_OUT, builtBy: 'compileJava9')
output.dir(JAVA9_OUT, builtBy: 'cacheJava9')
}
} }
} }
@ -57,22 +55,9 @@ task compileJava9(type: JavaCompile) {
} }
} }
task cacheJava9(type: Copy) {
dependsOn 'compileJava9'
from(file(JAVA9_OUT + VERSIONS9))
into(JAVA9_SRC)
}
jar { jar {
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}")
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from JAVA9_SRC include '*.class'
}
}
manifest { manifest {
attributes ( attributes (
'Automatic-Module-Name' : MODULE_NAME, 'Automatic-Module-Name' : MODULE_NAME,

View File

@ -22,9 +22,7 @@ final String BEANS_RES = "${buildDir}/generated-resources"
sourceSets { sourceSets {
main { main {
if (jdkVersion > 8) { output.dir(JAVA9_OUT, builtBy: 'compileJava9')
output.dir(JAVA9_OUT, builtBy: 'cacheJava9')
}
compileClasspath += files(BEANS_RES) compileClasspath += files(BEANS_RES)
java { java {
srcDirs += BEANS_SRC srcDirs += BEANS_SRC
@ -116,11 +114,6 @@ task compileJava9(type: JavaCompile, dependsOn: 'compileJava') {
} }
} }
task cacheJava9(type: Copy, dependsOn: 'compileJava9') {
from(file(JAVA9_OUT + VERSIONS9))
into(JAVA9_SRC)
}
jar { jar {
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}")
@ -138,12 +131,6 @@ jar {
} }
} }
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from JAVA9_SRC include '*.class'
}
}
// ignore second module-info.class from poi-ooxml-full // ignore second module-info.class from poi-ooxml-full
// duplicatesStrategy = 'exclude' // duplicatesStrategy = 'exclude'
includeEmptyDirs = false includeEmptyDirs = false

View File

@ -35,14 +35,10 @@ configurations {
sourceSets { sourceSets {
main { main {
if (jdkVersion > 8) { output.dir(JAVA9_OUT, builtBy: 'compileJava9')
output.dir(JAVA9_OUT, builtBy: 'cacheJava9')
}
} }
test { test {
if (jdkVersion > 8) { output.dir(TEST9_OUT, builtBy: 'compileTest9')
output.dir(TEST9_OUT, builtBy: 'cacheTest9')
}
} }
} }
@ -175,13 +171,6 @@ task compileJava9(type: JavaCompile) {
] ]
} }
task cacheJava9(type: Copy) {
dependsOn 'compileJava9'
from(file(JAVA9_OUT + VERSIONS9))
into(JAVA9_SRC)
}
task compileTest9(type: JavaCompile) { task compileTest9(type: JavaCompile) {
dependsOn 'compileTestJava', ':poi:testJar' dependsOn 'compileTestJava', ':poi:testJar'
@ -200,22 +189,9 @@ task compileTest9(type: JavaCompile) {
} }
task cacheTest9(type: Copy) {
dependsOn 'compileTest9'
from(file(TEST9_OUT + VERSIONS9))
into(TEST9_SRC)
}
jar { jar {
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}")
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from JAVA9_SRC include '*.class'
}
}
manifest { manifest {
attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true') attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true')
} }
@ -230,12 +206,6 @@ task testJar(type: Jar, dependsOn: testClasses) {
// ignore second module-info.class from main // ignore second module-info.class from main
duplicatesStrategy = 'exclude' duplicatesStrategy = 'exclude'
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from TEST9_SRC include '*.class'
}
}
from sourceSets.test.output + sourceSets.main.output from sourceSets.test.output + sourceSets.main.output
manifest { manifest {

View File

@ -24,14 +24,10 @@ configurations {
sourceSets { sourceSets {
main { main {
if (jdkVersion > 8) { output.dir(JAVA9_OUT, builtBy: 'compileJava9')
output.dir(JAVA9_OUT, builtBy: 'cacheJava9')
}
} }
test { test {
if (jdkVersion > 8) { output.dir(TEST9_OUT, builtBy: 'compileTest9')
output.dir(TEST9_OUT, builtBy: 'cacheTest9')
}
} }
} }
@ -78,13 +74,6 @@ task compileJava9(type: JavaCompile) {
] ]
} }
task cacheJava9(type: Copy) {
dependsOn 'compileJava9'
from(file(JAVA9_OUT + VERSIONS9))
into(JAVA9_SRC)
}
task compileTest9(type: JavaCompile) { task compileTest9(type: JavaCompile) {
dependsOn 'compileTestJava', ':poi:jar' dependsOn 'compileTestJava', ':poi:jar'
@ -103,22 +92,9 @@ task compileTest9(type: JavaCompile) {
} }
task cacheTest9(type: Copy) {
dependsOn 'compileTest9'
from(file(TEST9_OUT + VERSIONS9))
into(TEST9_SRC)
}
jar { jar {
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}")
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from JAVA9_SRC include '*.class'
}
}
manifest { manifest {
attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true') attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true')
} }
@ -133,12 +109,6 @@ task testJar(type: Jar, dependsOn: testClasses) {
// ignore second module-info.class from main // ignore second module-info.class from main
duplicatesStrategy = 'exclude' duplicatesStrategy = 'exclude'
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from TEST9_SRC include '*.class'
}
}
from sourceSets.test.output + sourceSets.main.output from sourceSets.test.output + sourceSets.main.output
manifest { manifest {

View File

@ -24,18 +24,14 @@ configurations {
sourceSets { sourceSets {
main { main {
if (jdkVersion > 8) { output.dir(JAVA9_OUT, builtBy: 'compileJava9')
output.dir(JAVA9_OUT, builtBy: 'cacheJava9')
}
java { java {
// also include the generated Version.java // also include the generated Version.java
srcDirs += 'build/generated-sources' srcDirs += 'build/generated-sources'
} }
} }
test { test {
if (jdkVersion > 8) { output.dir(TEST9_OUT, builtBy: 'compileTest9')
output.dir(TEST9_OUT, builtBy: 'cacheTest9')
}
} }
} }
@ -46,7 +42,6 @@ dependencies {
api "commons-io:commons-io:${commonsIoVersion}" api "commons-io:commons-io:${commonsIoVersion}"
api 'com.zaxxer:SparseBitSet:1.2' api 'com.zaxxer:SparseBitSet:1.2'
api "org.apache.logging.log4j:log4j-api:${log4jVersion}" api "org.apache.logging.log4j:log4j-api:${log4jVersion}"
// implementation 'javax.activation:activation:1.1.1'
testImplementation 'org.reflections:reflections:0.10.2' testImplementation 'org.reflections:reflections:0.10.2'
testImplementation 'org.apache.ant:ant:1.10.12' testImplementation 'org.apache.ant:ant:1.10.12'
@ -107,13 +102,6 @@ task compileJava9(type: JavaCompile) {
] ]
} }
task cacheJava9(type: Copy) {
dependsOn 'compileJava9'
from(file(JAVA9_OUT + VERSIONS9))
into(JAVA9_SRC)
}
task compileTest9(type: JavaCompile) { task compileTest9(type: JavaCompile) {
dependsOn 'compileTestJava' dependsOn 'compileTestJava'
@ -131,22 +119,8 @@ task compileTest9(type: JavaCompile) {
classpath = files() classpath = files()
} }
task cacheTest9(type: Copy) {
dependsOn 'compileTest9'
from(file(TEST9_OUT + VERSIONS9))
into(TEST9_SRC)
}
jar { jar {
dependsOn cacheJava9 dependsOn compileJava9
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from JAVA9_SRC include '*.class'
}
}
manifest { manifest {
attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true') attributes('Automatic-Module-Name': MODULE_NAME, 'Multi-Release': 'true')
@ -155,19 +129,13 @@ jar {
// Create a separate jar for test-code to depend on it in other projects // Create a separate jar for test-code to depend on it in other projects
// See http://stackoverflow.com/questions/5144325/gradle-test-dependency // See http://stackoverflow.com/questions/5144325/gradle-test-dependency
task testJar(type: Jar, dependsOn: [ testClasses, cacheTest9 ]) { task testJar(type: Jar, dependsOn: [ testClasses, compileTest9 ]) {
destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}-tests") destinationDirectory = file("../build/dist/maven/${project.archivesBaseName}-tests")
classifier 'tests' classifier 'tests'
// ignore second module-info.class from main // ignore second module-info.class from main
duplicatesStrategy = 'exclude' duplicatesStrategy = 'exclude'
if (jdkVersion == 8) {
into('META-INF/versions/9') {
from TEST9_SRC include '*.class'
}
}
from sourceSets.test.output + sourceSets.main.output from sourceSets.test.output + sourceSets.main.output
manifest { manifest {

Binary file not shown.

Binary file not shown.