mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-10-26 08:06:09 +01:00
136 lines
3.5 KiB
Groovy
136 lines
3.5 KiB
Groovy
/*
|
|
* Copyright (c) 2020 - present Cloudogu GmbH
|
|
*
|
|
* 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.
|
|
*
|
|
* 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.
|
|
*
|
|
* 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/.
|
|
*/
|
|
|
|
plugins {
|
|
id 'java-library'
|
|
id 'org.scm-manager.java'
|
|
id 'org.scm-manager.build-info'
|
|
}
|
|
|
|
// 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
|
|
compileOnly libraries.lombok
|
|
testCompileOnly libraries.lombok
|
|
annotationProcessor libraries.lombok
|
|
testAnnotationProcessor libraries.lombok
|
|
|
|
// jakarta
|
|
api libraries.jakartaAnnotationApi
|
|
|
|
// servlet api
|
|
implementation libraries.servletApi
|
|
|
|
// logging
|
|
api libraries.slf4jApi
|
|
api libraries.slf4jJcl // is api here required?
|
|
testImplementation libraries.logback
|
|
|
|
// injection
|
|
api libraries.guice
|
|
api libraries.guiceServlet
|
|
api libraries.guiceThrowingproviders
|
|
api libraries.guiceAssistedinject
|
|
|
|
// rest api
|
|
api libraries.jaxRs
|
|
testImplementation libraries.resteasyCore
|
|
|
|
// cli
|
|
api libraries.picocli
|
|
|
|
// json
|
|
api libraries.jacksonCore
|
|
api libraries.jacksonAnnotations
|
|
api libraries.jacksonDatabind
|
|
api libraries.jacksonDatatypeJdk8
|
|
api libraries.jacksonDatatypeJsr310
|
|
|
|
// hypermedia
|
|
api libraries.edison
|
|
|
|
// dto mapping
|
|
api libraries.mapstruct
|
|
annotationProcessor libraries.mapstructProcessor
|
|
|
|
// events
|
|
api libraries.legman
|
|
|
|
// xml binding
|
|
api libraries.jaxbApi
|
|
api libraries.jaxbRuntime // should this be an part of api configuration?
|
|
|
|
// validation
|
|
api libraries.validator
|
|
testImplementation libraries.elApi
|
|
testImplementation libraries.elRuntime
|
|
|
|
// utils
|
|
api libraries.guava
|
|
api libraries.commonsLang
|
|
|
|
// security
|
|
api libraries.shiroCore
|
|
api libraries.ssp
|
|
annotationProcessor libraries.sspProcessor
|
|
testImplementation libraries.shiroUnit
|
|
|
|
// compression
|
|
implementation libraries.commonsCompress
|
|
|
|
// metrics
|
|
api libraries.micrometerCore
|
|
|
|
// tests
|
|
testImplementation libraries.junitJupiterApi
|
|
testImplementation libraries.junitJupiterParams
|
|
testRuntimeOnly libraries.junitJupiterEngine
|
|
testImplementation libraries.junitPioneer
|
|
|
|
// shiro
|
|
testImplementation libraries.shiroExtension
|
|
|
|
// junit 4 support
|
|
testRuntimeOnly libraries.junitVintageEngine
|
|
testImplementation libraries.junit
|
|
|
|
// assertions
|
|
testImplementation libraries.hamcrestCore
|
|
testImplementation libraries.hamcrestLibrary
|
|
testImplementation libraries.assertj
|
|
|
|
// mocking
|
|
testImplementation libraries.mockitoCore
|
|
testImplementation libraries.mockitoJunitJupiter
|
|
}
|
|
|
|
jar {
|
|
from project.layout.buildDirectory.dir('info')
|
|
dependsOn 'build-info'
|
|
}
|
|
|