191 lines
6.4 KiB
Groovy
191 lines
6.4 KiB
Groovy
plugins {
|
|
id 'java'
|
|
id 'war'
|
|
id 'eclipse'
|
|
id 'idea'
|
|
id 'org.springframework.boot' version '2.7.18'
|
|
id 'io.spring.dependency-management' version '1.1.3'
|
|
}
|
|
|
|
group = 'com.eactive'
|
|
version = '1.0.0'
|
|
sourceCompatibility = "1.8"
|
|
targetCompatibility = "1.8"
|
|
|
|
def nexusUrl = "https://nexus.eactive.synology.me:8090"
|
|
|
|
|
|
dependencies {
|
|
annotationProcessor "org.projectlombok:lombok:1.18.28"
|
|
annotationProcessor "org.projectlombok:lombok-mapstruct-binding:0.2.0", "org.mapstruct:mapstruct-processor:1.5.5.Final"
|
|
|
|
implementation 'com.eactive.elink.common:elink-common-data:4.5.5'
|
|
|
|
// implementation 'io.swagger.core.v3:swagger-core:2.2.25'
|
|
// implementation 'io.swagger.parser.v3:swagger-parser:2.1.23'
|
|
implementation fileTree(dir: 'libs/swagger', include: ['*.jar'])
|
|
|
|
implementation project(':elink-online-core-jpa')
|
|
implementation project(':elink-portal-common')
|
|
implementation project(':kjb-safedb')
|
|
|
|
implementation('org.springframework.boot:spring-boot-starter')
|
|
implementation 'org.springframework.boot:spring-boot-starter-jta-atomikos'
|
|
implementation('org.springframework.boot:spring-boot-starter-web')
|
|
implementation('org.springframework.boot:spring-boot-starter-validation')
|
|
implementation group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.0'
|
|
implementation group: 'com.fasterxml.woodstox', name: 'woodstox-core', version: '6.5.1'
|
|
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
|
|
implementation 'org.springframework.boot:spring-boot-starter-security'
|
|
implementation('org.springframework.boot:spring-boot-starter-cache')
|
|
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
|
|
implementation 'org.springframework.data:spring-data-envers'
|
|
implementation 'org.springframework.boot:spring-boot-starter-jdbc'
|
|
|
|
developmentOnly 'org.springframework.boot:spring-boot-devtools'
|
|
implementation 'org.springframework:spring-expression:5.3.30'
|
|
|
|
implementation group: 'xalan', name: 'xalan', version: '2.7.3'
|
|
|
|
implementation 'org.hibernate:hibernate-envers:5.6.15.Final'
|
|
implementation 'nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:3.0.0'
|
|
implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5'
|
|
|
|
implementation 'com.github.ua-parser:uap-java:1.5.3'
|
|
implementation 'org.apache.httpcomponents:httpclient:4.5.14'
|
|
implementation 'com.navercorp.lucy:lucy-xss-servlet:2.0.1'
|
|
implementation 'javax.servlet:javax.servlet-api:4.0.0'
|
|
implementation 'org.jasypt:jasypt:1.9.3'
|
|
implementation 'xerces:xercesImpl:2.12.2'
|
|
|
|
implementation 'org.apache.commons:commons-lang3:3.12.0'
|
|
implementation 'org.apache.commons:commons-collections4:4.4'
|
|
|
|
implementation 'commons-net:commons-net:3.9.0'
|
|
implementation('commons-beanutils:commons-beanutils:1.9.4') {
|
|
// exclude group: 'commons-collections', module: 'commons-collections'
|
|
}
|
|
implementation 'org.mapstruct:mapstruct:1.5.5.Final'
|
|
implementation 'com.fasterxml.jackson.core:jackson-core:2.15.3'
|
|
implementation 'com.fasterxml.jackson.core:jackson-annotations:2.15.3'
|
|
implementation 'com.fasterxml.jackson.core:jackson-databind:2.15.3'
|
|
|
|
implementation group: 'org.apache.velocity', name: 'velocity-engine-core', version: '2.3'
|
|
|
|
// runtimeOnly group: 'com.mysql', name: 'mysql-connector-j', version: '8.4.0'
|
|
runtimeOnly 'com.oracle.database.jdbc:ojdbc8:19.20.0.0'
|
|
|
|
implementation 'net.bytebuddy:byte-buddy:1.14.5'
|
|
|
|
// Commons FileUpload (WAS 독립적인 multipart 처리)
|
|
implementation 'commons-fileupload:commons-fileupload:1.5'
|
|
implementation 'commons-io:commons-io:2.15.1'
|
|
|
|
|
|
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
|
|
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
|
|
testImplementation 'org.mockito:mockito-inline:3.11.2'
|
|
testImplementation 'org.springframework.boot:spring-boot-starter-test'
|
|
testImplementation 'org.seleniumhq.selenium:selenium-java:4.8.3'
|
|
testImplementation group: 'io.github.bonigarcia', name: 'webdrivermanager', version: '5.9.1'
|
|
testImplementation 'org.apache.httpcomponents.client5:httpclient5:5.2.1'
|
|
|
|
}
|
|
|
|
ext {
|
|
springMavenArtifactVersion = '5.3.30'
|
|
encoding = 'UTF-8'
|
|
profile = 'local'
|
|
}
|
|
|
|
|
|
task printProfile {
|
|
doLast {
|
|
if (project.hasProperty('profile')) {
|
|
println "Current profile: ${project.property('profile')}"
|
|
} else {
|
|
println "No profile specified"
|
|
}
|
|
}
|
|
}
|
|
|
|
bootRun {
|
|
// 디버깅 사용시에는 아래 내용 주석 해제 하세요
|
|
// jvmArgs '-Xdebug', '-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005'
|
|
|
|
args = ["--spring.profiles.active=dev"]
|
|
}
|
|
|
|
|
|
sourceSets {
|
|
main {
|
|
java {
|
|
srcDir 'src/main/java'
|
|
srcDir 'build/generated/sources/annotationProcessor/java/main'
|
|
}
|
|
}
|
|
}
|
|
|
|
configurations {
|
|
annotationProcessor
|
|
}
|
|
|
|
compileJava {
|
|
options.annotationProcessorPath = configurations.annotationProcessor
|
|
options.compilerArgs += ["-parameters"]
|
|
options.encoding = 'UTF-8'
|
|
}
|
|
|
|
processResources {
|
|
exclude { details ->
|
|
details.file.name.startsWith('application-') &&
|
|
details.file.name.endsWith('.yml') &&
|
|
!(details.file.name in ['application-stage.yml', 'application-prod.yml'])
|
|
}
|
|
}
|
|
|
|
test {
|
|
useJUnitPlatform()
|
|
enabled = true
|
|
}
|
|
|
|
bootWar {
|
|
archiveFileName = "eapim-portal-boot.war"
|
|
}
|
|
|
|
war {
|
|
archiveFileName = "eapim-portal.war"
|
|
|
|
from('src/main/resources/jeus-web-dd.xml') { into 'WEB-INF' }
|
|
from('src/main/resources/weblogic.xml') { into 'WEB-INF' }
|
|
|
|
}
|
|
|
|
task printSourceSets {
|
|
doLast {
|
|
sourceSets.each { srcSet ->
|
|
println "SourceSet: ${srcSet.name}"
|
|
println " Java srcDirs : ${srcSet.allJava.srcDirs}"
|
|
println " Resources : ${srcSet.resources.srcDirs}"
|
|
println " Output dir : ${srcSet.output.classesDirs.asPath}"
|
|
}
|
|
}
|
|
}
|
|
|
|
// CryptoCli 실행 task (bcrypt 지원)
|
|
task cryptoCli(type: JavaExec) {
|
|
mainClass = 'com.eactive.ext.kjb.safedb.CryptoCli'
|
|
classpath = sourceSets.main.runtimeClasspath
|
|
standardInput = System.in
|
|
|
|
// SafeDB 라이브러리 경로 추가 (리눅스)
|
|
classpath += files("/safedb/JavaAPI/config")
|
|
classpath += fileTree(dir: "/safedb/JavaAPI/lib", include: ["*.jar"])
|
|
|
|
// CLI 인자 전달: ./gradlew cryptoCli --args="bcrypt hash password123"
|
|
if (project.hasProperty('args')) {
|
|
args project.args.split('\\s+')
|
|
}
|
|
} |