2016-09-22 05:21:56 -04:00
|
|
|
/* ====================================================================
|
|
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
|
|
this work for additional information regarding copyright ownership.
|
|
|
|
The ASF licenses this file to You 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.
|
|
|
|
==================================================================== */
|
2016-10-14 16:46:30 -04:00
|
|
|
buildscript {
|
2018-06-07 01:58:10 -04:00
|
|
|
repositories {
|
|
|
|
maven { url "https://plugins.gradle.org/m2/" }
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
2019-11-17 06:26:30 -05:00
|
|
|
// 2.x fails with "Could not get unknown property 'me'"
|
|
|
|
classpath 'me.champeau.gradle:japicmp-gradle-plugin:0.1.2'
|
2019-11-12 17:50:30 -05:00
|
|
|
classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.8"
|
2018-06-07 01:58:10 -04:00
|
|
|
}
|
2016-10-14 16:46:30 -04:00
|
|
|
}
|
2016-09-22 05:21:56 -04:00
|
|
|
|
2018-06-30 16:40:53 -04:00
|
|
|
repositories {
|
|
|
|
mavenCentral()
|
|
|
|
}
|
|
|
|
|
2017-09-15 14:39:18 -04:00
|
|
|
// Only add the plugin for Sonar if enabled
|
2017-03-10 15:13:46 -05:00
|
|
|
if (project.hasProperty('enableSonar')) {
|
2018-06-07 01:58:10 -04:00
|
|
|
println 'Enabling Sonar support'
|
|
|
|
apply plugin: "org.sonarqube"
|
2017-03-10 15:13:46 -05:00
|
|
|
}
|
2016-12-26 15:47:29 -05:00
|
|
|
|
2016-09-22 05:21:56 -04:00
|
|
|
// For help converting an Ant build to a Gradle build, see
|
|
|
|
// https://docs.gradle.org/current/userguide/ant.html
|
|
|
|
|
2018-06-30 16:36:47 -04:00
|
|
|
configurations {
|
|
|
|
antLibs
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
2020-02-14 08:19:10 -05:00
|
|
|
antLibs("junit:junit:4.13")
|
2018-06-30 16:36:47 -04:00
|
|
|
antLibs("org.apache.ant:ant-junit:1.10.4")
|
|
|
|
antLibs("org.apache.ant:ant-junit4:1.10.4")
|
|
|
|
}
|
|
|
|
|
|
|
|
ant.taskdef(name: "junit",
|
|
|
|
classname: "org.apache.tools.ant.taskdefs.optional.junit.JUnitTask",
|
|
|
|
classpath: configurations.antLibs.asPath)
|
|
|
|
|
2019-10-26 01:26:56 -04:00
|
|
|
wrapper {
|
2020-06-06 06:02:21 -04:00
|
|
|
gradleVersion = '6.5'
|
2019-10-26 01:26:56 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
task adjustWrapperPropertiesFile {
|
2020-05-27 16:27:38 -04:00
|
|
|
doLast {
|
|
|
|
ant.replaceregexp(match:'^#.*', replace:'', flags:'g', byline:true) {
|
|
|
|
fileset(dir: project.projectDir, includes: 'gradle/wrapper/gradle-wrapper.properties')
|
|
|
|
}
|
|
|
|
new File(project.projectDir, 'gradle/wrapper/gradle-wrapper.properties').with { it.text = it.readLines().findAll { it }.sort().join('\n') }
|
|
|
|
ant.fixcrlf(file: 'gradle/wrapper/gradle-wrapper.properties', eol: 'lf')
|
|
|
|
}
|
2019-10-26 01:26:56 -04:00
|
|
|
}
|
|
|
|
wrapper.finalizedBy adjustWrapperPropertiesFile
|
2016-10-07 15:33:11 -04:00
|
|
|
|
|
|
|
/**
|
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
Define properties for all projects, including this one
|
2016-10-07 15:33:11 -04:00
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
*/
|
2016-10-07 15:33:11 -04:00
|
|
|
allprojects {
|
2018-06-07 01:58:10 -04:00
|
|
|
apply plugin: 'eclipse'
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
Define things that are only necessary in sub-projects, but not in the master-project itself
|
2016-10-07 15:33:11 -04:00
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
*/
|
2016-10-07 15:33:11 -04:00
|
|
|
subprojects {
|
|
|
|
//Put instructions for each sub project, but not the master
|
|
|
|
apply plugin: 'java'
|
|
|
|
apply plugin: 'jacoco'
|
2016-10-14 16:46:30 -04:00
|
|
|
|
2020-02-13 18:26:54 -05:00
|
|
|
// See https://github.com/melix/japicmp-gradle-plugin
|
2018-06-07 01:58:10 -04:00
|
|
|
apply plugin: 'me.champeau.gradle.japicmp'
|
2020-02-13 18:26:54 -05:00
|
|
|
|
2020-05-17 13:29:37 -04:00
|
|
|
version = '5.0.0-SNAPSHOT'
|
2018-06-07 01:58:10 -04:00
|
|
|
ext {
|
2020-04-08 04:29:15 -04:00
|
|
|
bouncyCastleVersion = '1.65'
|
2020-02-14 18:06:06 -05:00
|
|
|
commonsCodecVersion = '1.14'
|
2020-02-14 18:00:49 -05:00
|
|
|
commonsCompressVersion = '1.20'
|
|
|
|
commonsMathVersion = '3.6.1'
|
2020-02-13 18:26:54 -05:00
|
|
|
japicmpversion = '4.1.2'
|
2020-02-14 09:04:17 -05:00
|
|
|
junitVersion = '4.13'
|
2020-06-06 06:02:21 -04:00
|
|
|
mockitoVersion = '3.3.3'
|
2020-02-14 09:04:17 -05:00
|
|
|
xmlbeansVersion = '3.1.0'
|
2018-06-07 01:58:10 -04:00
|
|
|
}
|
2016-10-07 15:33:11 -04:00
|
|
|
|
2018-06-07 01:58:10 -04:00
|
|
|
tasks.withType(JavaCompile) {
|
|
|
|
options.encoding = 'UTF-8'
|
|
|
|
}
|
2016-10-07 15:33:11 -04:00
|
|
|
|
2017-09-15 14:39:18 -04:00
|
|
|
sourceCompatibility = 1.8
|
2016-10-07 15:33:11 -04:00
|
|
|
|
|
|
|
repositories {
|
2019-03-21 05:38:21 -04:00
|
|
|
mavenCentral()
|
2019-03-21 05:34:04 -04:00
|
|
|
maven {
|
2019-03-26 19:41:53 -04:00
|
|
|
url 'https://repository.apache.org/content/repositories/releases'
|
2019-03-21 05:34:04 -04:00
|
|
|
}
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
2018-06-07 01:58:10 -04:00
|
|
|
jar {
|
|
|
|
manifest {
|
|
|
|
attributes 'Implementation-Title': 'Apache POI', 'Implementation-Version': version
|
|
|
|
}
|
|
|
|
}
|
2016-10-07 15:33:11 -04:00
|
|
|
|
|
|
|
test {
|
2018-06-07 01:58:10 -04:00
|
|
|
// Exclude some tests that are not actually tests or do not run cleanly on purpose
|
|
|
|
exclude '**/BaseTestBorderStyle.class'
|
|
|
|
exclude '**/BaseTestCellUtil.class'
|
|
|
|
exclude '**/TestUnfixedBugs.class'
|
|
|
|
exclude '**/TestOneFile.class'
|
2016-10-07 15:33:11 -04:00
|
|
|
|
2018-08-23 16:23:30 -04:00
|
|
|
// Exclude Test Suites
|
|
|
|
exclude '**/All*Tests.class'
|
|
|
|
exclude '**/HSSFTests.class'
|
|
|
|
|
2016-10-07 15:33:11 -04:00
|
|
|
// set heap size for the test JVM(s)
|
|
|
|
minHeapSize = "128m"
|
|
|
|
maxHeapSize = "768m"
|
2018-02-08 14:34:22 -05:00
|
|
|
|
|
|
|
// Specifying the local via system properties did not work, so we set them this way
|
|
|
|
jvmArgs '-Duser.language=en -Duser.country=US'
|
2020-02-13 18:26:54 -05:00
|
|
|
|
2016-10-07 15:33:11 -04:00
|
|
|
// show standard out and standard error of the test JVM(s) on the console
|
|
|
|
//testLogging.showStandardStreams = true
|
|
|
|
|
|
|
|
// http://forums.gradle.org/gradle/topics/jacoco_related_failure_in_multiproject_build
|
|
|
|
systemProperties['user.dir'] = workingDir
|
2020-02-13 18:26:54 -05:00
|
|
|
|
2016-10-07 15:33:11 -04:00
|
|
|
systemProperties['POI.testdata.path'] = '../../test-data'
|
2020-02-13 18:26:54 -05:00
|
|
|
|
2018-08-26 07:41:31 -04:00
|
|
|
// this is necessary for JDK 9+ to keep formatting dates the same way as in previous JDK-versions
|
|
|
|
systemProperties['java.locale.providers'] = 'JRE,CLDR'
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
jacoco {
|
2019-12-01 06:42:09 -05:00
|
|
|
toolVersion = '0.8.5'
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
2020-02-13 18:26:54 -05:00
|
|
|
|
2016-10-14 16:46:30 -04:00
|
|
|
// ensure the build-dir exists
|
|
|
|
projectDir.mkdirs()
|
2017-03-13 09:20:51 -04:00
|
|
|
|
2018-06-07 01:58:10 -04:00
|
|
|
if (project.hasProperty('enableSonar')) {
|
|
|
|
sonarqube {
|
|
|
|
properties {
|
|
|
|
// as we currently use build/<module>/ as project-basedir, we need to tell Sonar to use
|
|
|
|
// the root-folder as "basedir" for the projects
|
|
|
|
property "sonar.projectBaseDir", "$projectDir/../.."
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2018-07-05 15:55:12 -04:00
|
|
|
|
|
|
|
task(japicmp, type: me.champeau.gradle.ArtifactJapicmpTask, dependsOn: jar) {
|
|
|
|
to = jar.archivePath
|
|
|
|
onlyModified = true
|
|
|
|
onlyBinaryIncompatibleModified = true
|
|
|
|
failOnModification = false
|
|
|
|
txtOutputFile = file("$buildDir/reports/japi.txt")
|
|
|
|
htmlOutputFile = file("$buildDir/reports/japi.html")
|
|
|
|
}
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
project('main') {
|
2018-06-07 01:58:10 -04:00
|
|
|
sourceSets.main.java.srcDirs = ['../../src/java']
|
|
|
|
sourceSets.main.resources.srcDirs = ['../../src/resources/main']
|
|
|
|
sourceSets.test.java.srcDirs = ['../../src/testcases']
|
|
|
|
|
|
|
|
dependencies {
|
2020-02-15 03:07:01 -05:00
|
|
|
compile "commons-codec:commons-codec:${commonsCodecVersion}"
|
|
|
|
compile 'commons-logging:commons-logging:1.2'
|
|
|
|
compile 'org.apache.commons:commons-collections4:4.4'
|
|
|
|
compile "org.apache.commons:commons-math3:${commonsMathVersion}"
|
|
|
|
compile 'javax.activation:activation:1.1.1'
|
|
|
|
compile 'com.zaxxer:SparseBitSet:1.2'
|
|
|
|
|
|
|
|
testCompile "junit:junit:${junitVersion}"
|
|
|
|
testCompile "org.mockito:mockito-core:${mockitoVersion}"
|
|
|
|
testCompile 'org.reflections:reflections:0.9.11'
|
2018-06-07 01:58:10 -04:00
|
|
|
}
|
|
|
|
|
2018-07-05 15:53:36 -04:00
|
|
|
jar {
|
|
|
|
manifest {
|
|
|
|
attributes 'Automatic-Module-Name': 'org.apache.poi.main'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-06-07 01:58:10 -04:00
|
|
|
// Create a separate jar for test-code to depend on it in other projects
|
|
|
|
// See http://stackoverflow.com/questions/5144325/gradle-test-dependency
|
|
|
|
task testJar(type: Jar, dependsOn: testClasses) {
|
|
|
|
baseName = "test-${project.archivesBaseName}"
|
|
|
|
from sourceSets.test.output
|
|
|
|
}
|
|
|
|
|
|
|
|
configurations {
|
|
|
|
tests
|
|
|
|
}
|
|
|
|
|
|
|
|
artifacts {
|
|
|
|
tests testJar
|
|
|
|
}
|
|
|
|
|
2020-02-14 09:04:17 -05:00
|
|
|
japicmp.baseline = "org.apache.poi:poi:${japicmpversion}@jar"
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
project('ooxml') {
|
2020-02-13 18:26:54 -05:00
|
|
|
|
2018-06-07 01:58:10 -04:00
|
|
|
sourceSets.main.java.srcDirs = ['../../src/ooxml/java']
|
|
|
|
sourceSets.main.resources.srcDirs = ['../../src/ooxml/resources', '../../src/resources/ooxml']
|
|
|
|
sourceSets.test.java.srcDirs = ['../../src/ooxml/testcases']
|
2016-10-07 15:33:11 -04:00
|
|
|
|
|
|
|
// for now import the ant-task for building the jars from build.xml
|
|
|
|
// we need to rename the tasks as e.g. task "jar" conflicts with :ooxml:jar
|
2018-06-07 01:58:10 -04:00
|
|
|
ant.importBuild('../../build.xml') { antTargetName ->
|
|
|
|
'ant-' + antTargetName
|
|
|
|
}
|
|
|
|
compileJava.dependsOn 'ant-compile-ooxml-xsds'
|
|
|
|
|
|
|
|
dependencies {
|
2020-02-15 03:07:01 -05:00
|
|
|
compile "org.apache.xmlbeans:xmlbeans:${xmlbeansVersion}"
|
|
|
|
compile 'org.apache.commons:commons-collections4:4.4'
|
|
|
|
compile "org.apache.commons:commons-math3:${commonsMathVersion}"
|
|
|
|
compile "org.apache.commons:commons-compress:${commonsCompressVersion}"
|
2020-03-18 17:06:09 -04:00
|
|
|
compile 'org.apache.santuario:xmlsec:2.1.5'
|
2020-02-15 03:07:01 -05:00
|
|
|
compile "org.bouncycastle:bcpkix-jdk15on:${bouncyCastleVersion}"
|
|
|
|
compile 'com.github.virtuald:curvesapi:1.06'
|
|
|
|
compile 'com.zaxxer:SparseBitSet:1.2'
|
2018-06-07 01:58:10 -04:00
|
|
|
|
2018-12-16 09:55:23 -05:00
|
|
|
// compile only, don't add it to our dist as it blows up the size
|
2020-02-17 17:28:08 -05:00
|
|
|
compile 'org.apache.xmlgraphics:batik-all:1.12'
|
2020-02-15 03:07:01 -05:00
|
|
|
compile 'xml-apis:xml-apis-ext:1.3.04'
|
|
|
|
compile 'org.apache.xmlgraphics:xmlgraphics-commons:2.3'
|
2018-12-16 09:55:23 -05:00
|
|
|
|
2018-06-07 01:58:10 -04:00
|
|
|
// for ooxml-lite, should we move this somewhere else?
|
2020-02-15 03:07:01 -05:00
|
|
|
compile "junit:junit:${junitVersion}"
|
|
|
|
|
|
|
|
compile project(':main')
|
|
|
|
compile project(':scratchpad') // TODO: get rid of this dependency!
|
2020-05-27 16:27:38 -04:00
|
|
|
compile files('../../lib/ooxml/ooxml-schemas-1.4.jar')
|
|
|
|
compile files('../../lib/ooxml/ooxml-security-1.1.jar')
|
2020-02-15 03:07:01 -05:00
|
|
|
|
|
|
|
testCompile "junit:junit:${junitVersion}"
|
|
|
|
testCompile "org.mockito:mockito-core:${mockitoVersion}"
|
|
|
|
testCompile 'org.xmlunit:xmlunit-core:2.5.1'
|
|
|
|
testCompile 'org.reflections:reflections:0.9.11'
|
|
|
|
testCompile project(path: ':main', configuration: 'tests')
|
|
|
|
testCompile 'org.openjdk.jmh:jmh-core:1.19'
|
|
|
|
testCompile 'org.openjdk.jmh:jmh-generator-annprocess:1.19'
|
2018-06-07 01:58:10 -04:00
|
|
|
}
|
|
|
|
|
2018-07-05 15:53:36 -04:00
|
|
|
jar {
|
|
|
|
manifest {
|
|
|
|
attributes 'Automatic-Module-Name': 'org.apache.poi.ooxml'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-02-14 09:04:17 -05:00
|
|
|
japicmp.baseline = "org.apache.poi:poi:${japicmpversion}@jar"
|
2020-04-05 01:52:12 -04:00
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
test {
|
2020-04-05 01:52:12 -04:00
|
|
|
// for some reason catching the OOM does not work when run from Gradle
|
|
|
|
exclude '**/MemoryUsage.class'
|
|
|
|
}
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
project('examples') {
|
2018-06-07 01:58:10 -04:00
|
|
|
sourceSets.main.java.srcDirs = ['../../src/examples/src']
|
|
|
|
|
|
|
|
dependencies {
|
2020-02-15 03:07:01 -05:00
|
|
|
compile project(':main')
|
|
|
|
compile project(':ooxml')
|
|
|
|
compile project(':scratchpad')
|
|
|
|
compile "org.apache.xmlbeans:xmlbeans:${xmlbeansVersion}"
|
2020-05-27 16:27:38 -04:00
|
|
|
compile files('../../lib/ooxml/ooxml-schemas-1.4.jar')
|
2020-02-15 03:07:01 -05:00
|
|
|
compile "org.apache.commons:commons-compress:${commonsCompressVersion}"
|
2018-06-07 01:58:10 -04:00
|
|
|
}
|
2018-07-05 15:55:12 -04:00
|
|
|
|
|
|
|
japicmp.enabled = false
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
project('excelant') {
|
2018-06-07 01:58:10 -04:00
|
|
|
sourceSets.main.java.srcDirs = ['../../src/excelant/java']
|
|
|
|
sourceSets.main.resources.srcDirs = ['../../src/excelant/resources']
|
|
|
|
sourceSets.test.java.srcDirs = ['../../src/excelant/testcases']
|
|
|
|
|
|
|
|
dependencies {
|
2020-02-15 03:07:01 -05:00
|
|
|
compile 'org.apache.ant:ant:1.10.4'
|
2016-10-07 15:33:11 -04:00
|
|
|
|
2020-02-15 03:07:01 -05:00
|
|
|
compile project(':main')
|
|
|
|
compile project(':ooxml')
|
2016-10-07 15:33:11 -04:00
|
|
|
|
2020-02-15 03:07:01 -05:00
|
|
|
testCompile project(path: ':main', configuration: 'tests')
|
|
|
|
testCompile "junit:junit:${junitVersion}"
|
2018-06-07 01:58:10 -04:00
|
|
|
}
|
2016-10-14 16:46:30 -04:00
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
jar {
|
|
|
|
manifest {
|
|
|
|
attributes 'Automatic-Module-Name': 'org.apache.poi.excelant'
|
|
|
|
}
|
|
|
|
}
|
2018-07-05 15:53:36 -04:00
|
|
|
|
2020-02-14 09:04:17 -05:00
|
|
|
japicmp.baseline = "org.apache.poi:poi-excelant:${japicmpversion}@jar"
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
project('integrationtest') {
|
2018-06-07 01:58:10 -04:00
|
|
|
sourceSets.test.java.srcDirs = ['../../src/integrationtest']
|
|
|
|
|
|
|
|
dependencies {
|
2020-02-15 03:07:01 -05:00
|
|
|
compile 'org.apache.ant:ant:1.10.4'
|
2018-06-07 01:58:10 -04:00
|
|
|
|
2020-02-15 03:07:01 -05:00
|
|
|
compile project(':main')
|
|
|
|
compile project(':ooxml')
|
|
|
|
compile project(':scratchpad')
|
|
|
|
compile project(':examples')
|
2018-06-07 01:58:10 -04:00
|
|
|
|
2020-02-15 03:07:01 -05:00
|
|
|
testCompile "junit:junit:${junitVersion}"
|
|
|
|
testCompile "org.apache.xmlbeans:xmlbeans:${xmlbeansVersion}"
|
2020-05-27 16:27:38 -04:00
|
|
|
testCompile files('../../lib/ooxml/ooxml-schemas-1.4.jar')
|
2018-06-07 01:58:10 -04:00
|
|
|
}
|
2016-10-07 15:33:11 -04:00
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
jar {
|
|
|
|
manifest {
|
|
|
|
attributes 'Automatic-Module-Name': 'org.apache.poi.integrationtest'
|
|
|
|
}
|
|
|
|
}
|
2018-07-05 15:53:36 -04:00
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
test {
|
2018-06-07 01:58:10 -04:00
|
|
|
// exclude these from the normal test-run
|
|
|
|
exclude '**/TestAllFiles.class'
|
|
|
|
exclude '**/*FileHandler.class'
|
|
|
|
exclude '**/RecordsStresser.class'
|
|
|
|
}
|
|
|
|
|
|
|
|
task integrationTest(type: Test) {
|
|
|
|
// these are just tests used during development of more test-code
|
|
|
|
exclude '**/*FileHandler.class'
|
|
|
|
exclude '**/RecordStresser.class'
|
|
|
|
}
|
2018-07-05 15:55:12 -04:00
|
|
|
|
|
|
|
japicmp.enabled = false
|
2016-10-07 15:33:11 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
project('scratchpad') {
|
2018-06-07 01:58:10 -04:00
|
|
|
sourceSets.main.java.srcDirs = ['../../src/scratchpad/src']
|
|
|
|
sourceSets.main.resources.srcDirs = ['../../src/resources/scratchpad']
|
|
|
|
sourceSets.test.java.srcDirs = ['../../src/scratchpad/testcases']
|
|
|
|
|
|
|
|
dependencies {
|
2020-02-15 03:07:01 -05:00
|
|
|
compile project(':main')
|
|
|
|
compile "commons-codec:commons-codec:${commonsCodecVersion}"
|
|
|
|
compile "org.apache.commons:commons-math3:${commonsMathVersion}"
|
2018-06-07 01:58:10 -04:00
|
|
|
|
2020-02-15 03:07:01 -05:00
|
|
|
// cyclic-dependency here: compile project(':ooxml')
|
2020-02-14 08:11:28 -05:00
|
|
|
|
2020-02-15 03:07:01 -05:00
|
|
|
testCompile "junit:junit:${junitVersion}"
|
|
|
|
testCompile "org.mockito:mockito-core:${mockitoVersion}"
|
|
|
|
testCompile project(path: ':main', configuration: 'tests')
|
2018-06-07 01:58:10 -04:00
|
|
|
}
|
|
|
|
|
2020-05-27 16:27:38 -04:00
|
|
|
jar {
|
|
|
|
manifest {
|
|
|
|
attributes 'Automatic-Module-Name': 'org.apache.poi.scratchpad'
|
|
|
|
}
|
|
|
|
}
|
2018-07-05 15:53:36 -04:00
|
|
|
|
2020-02-14 09:04:17 -05:00
|
|
|
japicmp.baseline = "org.apache.poi:poi:${japicmpversion}@jar"
|
2020-05-27 16:27:38 -04:00
|
|
|
}
|