2020-12-18 14:14:07 +01:00
|
|
|
/*
|
2024-09-24 09:42:07 +02:00
|
|
|
* Copyright (c) 2020 - present Cloudogu GmbH
|
2020-12-18 14:14:07 +01:00
|
|
|
*
|
2024-09-24 09:42:07 +02:00
|
|
|
* This program is free software: you can redistribute it and/or modify it under
|
|
|
|
|
* the terms of the GNU Affero General Public License as published by the Free
|
|
|
|
|
* Software Foundation, version 3.
|
2020-12-18 14:14:07 +01:00
|
|
|
*
|
2024-09-24 09:42:07 +02:00
|
|
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
|
|
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
|
|
|
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
|
|
|
|
* details.
|
2020-12-18 14:14:07 +01:00
|
|
|
*
|
2024-09-24 09:42:07 +02:00
|
|
|
* You should have received a copy of the GNU Affero General Public License
|
|
|
|
|
* along with this program. If not, see https://www.gnu.org/licenses/.
|
2020-12-18 14:14:07 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
plugins {
|
|
|
|
|
id 'java-library'
|
2021-01-06 11:41:13 +01:00
|
|
|
id 'org.scm-manager.java'
|
2020-12-22 10:21:59 +01:00
|
|
|
id 'org.scm-manager.build-info'
|
2020-12-18 14:14:07 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// TODO
|
|
|
|
|
// gradle has xerces on it classpath, which breaks our annotation processor
|
|
|
|
|
// so we force jdk build in for now
|
|
|
|
|
// @see https://stackoverflow.com/questions/53299280/java-and-xerces-cant-find-property-xmlconstants-access-external-dtd
|
|
|
|
|
System.setProperty("javax.xml.parsers.DocumentBuilderFactory", "com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl");
|
|
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
|
api platform(project(':'))
|
|
|
|
|
|
|
|
|
|
// scm annotations
|
|
|
|
|
api project(':scm-annotations')
|
|
|
|
|
annotationProcessor project(':scm-annotation-processor')
|
|
|
|
|
|
|
|
|
|
// lombok
|
2021-01-04 15:07:20 +01:00
|
|
|
compileOnly libraries.lombok
|
2021-08-19 11:27:51 +02:00
|
|
|
testCompileOnly libraries.lombok
|
2021-01-04 15:07:20 +01:00
|
|
|
annotationProcessor libraries.lombok
|
2021-08-19 11:27:51 +02:00
|
|
|
testAnnotationProcessor libraries.lombok
|
2020-12-18 14:14:07 +01:00
|
|
|
|
2023-11-29 18:14:03 +01:00
|
|
|
// jakarta
|
|
|
|
|
api libraries.jakartaAnnotationApi
|
|
|
|
|
|
2020-12-18 14:14:07 +01:00
|
|
|
// servlet api
|
2021-01-04 15:07:20 +01:00
|
|
|
implementation libraries.servletApi
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// logging
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.slf4jApi
|
|
|
|
|
api libraries.slf4jJcl // is api here required?
|
|
|
|
|
testImplementation libraries.logback
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// injection
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.guice
|
|
|
|
|
api libraries.guiceServlet
|
|
|
|
|
api libraries.guiceThrowingproviders
|
|
|
|
|
api libraries.guiceAssistedinject
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// rest api
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.jaxRs
|
|
|
|
|
testImplementation libraries.resteasyCore
|
2020-12-18 14:14:07 +01:00
|
|
|
|
2022-04-04 12:02:16 +02:00
|
|
|
// cli
|
|
|
|
|
api libraries.picocli
|
|
|
|
|
|
2020-12-18 14:14:07 +01:00
|
|
|
// json
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.jacksonCore
|
|
|
|
|
api libraries.jacksonAnnotations
|
|
|
|
|
api libraries.jacksonDatabind
|
2022-10-18 14:45:53 +02:00
|
|
|
api libraries.jacksonDatatypeJdk8
|
|
|
|
|
api libraries.jacksonDatatypeJsr310
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// hypermedia
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.edison
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// dto mapping
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.mapstruct
|
|
|
|
|
annotationProcessor libraries.mapstructProcessor
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// events
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.legman
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// xml binding
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.jaxbApi
|
|
|
|
|
api libraries.jaxbRuntime // should this be an part of api configuration?
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// validation
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.validator
|
|
|
|
|
testImplementation libraries.elApi
|
|
|
|
|
testImplementation libraries.elRuntime
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// utils
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.guava
|
|
|
|
|
api libraries.commonsLang
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// security
|
2021-01-04 15:07:20 +01:00
|
|
|
api libraries.shiroCore
|
|
|
|
|
api libraries.ssp
|
|
|
|
|
annotationProcessor libraries.sspProcessor
|
|
|
|
|
testImplementation libraries.shiroUnit
|
2020-12-18 14:14:07 +01:00
|
|
|
|
2021-02-18 16:30:35 +01:00
|
|
|
// compression
|
|
|
|
|
implementation libraries.commonsCompress
|
|
|
|
|
|
2021-03-10 10:07:29 +01:00
|
|
|
// metrics
|
|
|
|
|
api libraries.micrometerCore
|
|
|
|
|
|
2020-12-18 14:14:07 +01:00
|
|
|
// tests
|
2021-01-04 15:07:20 +01:00
|
|
|
testImplementation libraries.junitJupiterApi
|
|
|
|
|
testImplementation libraries.junitJupiterParams
|
|
|
|
|
testRuntimeOnly libraries.junitJupiterEngine
|
2022-04-04 12:02:16 +02:00
|
|
|
testImplementation libraries.junitPioneer
|
2020-12-18 14:14:07 +01:00
|
|
|
|
2021-05-05 14:43:16 +02:00
|
|
|
// shiro
|
|
|
|
|
testImplementation libraries.shiroExtension
|
|
|
|
|
|
2020-12-18 14:14:07 +01:00
|
|
|
// junit 4 support
|
2021-01-04 15:07:20 +01:00
|
|
|
testRuntimeOnly libraries.junitVintageEngine
|
|
|
|
|
testImplementation libraries.junit
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// assertions
|
2021-01-04 15:07:20 +01:00
|
|
|
testImplementation libraries.hamcrestCore
|
|
|
|
|
testImplementation libraries.hamcrestLibrary
|
|
|
|
|
testImplementation libraries.assertj
|
2020-12-18 14:14:07 +01:00
|
|
|
|
|
|
|
|
// mocking
|
2021-01-04 15:07:20 +01:00
|
|
|
testImplementation libraries.mockitoCore
|
|
|
|
|
testImplementation libraries.mockitoJunitJupiter
|
2020-12-18 14:14:07 +01:00
|
|
|
}
|
|
|
|
|
|
2020-12-22 10:21:59 +01:00
|
|
|
jar {
|
2021-11-29 09:05:24 +01:00
|
|
|
from project.layout.buildDirectory.dir('info')
|
2020-12-22 10:21:59 +01:00
|
|
|
dependsOn 'build-info'
|
|
|
|
|
}
|
|
|
|
|
|