From b6c64983eedbc95ed02e4dd553d32e31d5b00d53 Mon Sep 17 00:00:00 2001 From: curry772 Date: Mon, 7 Sep 2026 16:08:56 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B3=B4=EC=95=88=EC=84=B1=EC=8B=AC=EC=9D=98?= =?UTF-8?q?=20=EC=98=A4=ED=94=88=EC=86=8C=EC=8A=A4=20=EC=A1=B0=EC=B9=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 28 +++++++++++++++++++++++++++- elink-online-common | 2 +- elink-online-transformer | 2 +- 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index c3dbced..63d1eef 100644 --- a/build.gradle +++ b/build.gradle @@ -110,7 +110,11 @@ dependencies { implementation "org.springframework:spring-webmvc:${springVersion}" - implementation "org.springframework.security:spring-security-jwt:1.1.1.RELEASE" + // bcpkix/bcprov-jdk15on:1.64 전이 차단 — BouncyCastle 은 elink-online-common 이 + // 제공하는 jdk18on 라인만 사용한다(구버전 클래스 중복 방지). + implementation ("org.springframework.security:spring-security-jwt:1.1.1.RELEASE") { + exclude group: 'org.bouncycastle' + } //implementation "com.eactive:ojdbc8:1.0" //implementation "org.postgresql:postgresql:42.2.23" @@ -157,6 +161,28 @@ test { configurations.all { exclude group: 'log4j', module: 'log4j' exclude group: 'org.codehaus.jackson' + + // commons-fileupload: elink-online-common 이 api 로 선언(build.gradle:85)하지만, + // 사용처는 HttpAdapterServiceRest / HttpAdapterServiceVirtualAccount 두 클래스뿐이다. + // 두 클래스는 정적 참조가 없고 HttpAdapterServiceFactory 의 + // Class.forName(DB 설정 클래스명) 으로만 로드되는데, DJB 는 자체 DJBApiAdapterService 를 + // 사용하므로 이 어댑터 서비스가 기동되지 않는다(= 런타임 미사용). + // 공유 모듈인 elink-online-common 에서 의존성을 지우면 타 사이트가 깨지므로, + // 루트에서만 배제해 배포 WAR(WEB-INF/lib)에서 제외한다. + // ※ 운영 DB 어댑터 설정에 위 두 클래스가 등록되면 NoClassDefFoundError 가 발생하므로, + // 해당 어댑터를 사용하게 되는 시점에 이 exclude 를 반드시 제거할 것. + exclude group: 'commons-fileupload' + + // BouncyCastle jdk15on 라인 최종 차단. + // jdk15on 과 jdk18on 은 artifactId 가 달라 Gradle 이 같은 라이브러리로 보지 않는다. + // 어느 경로로든 유입되면 org.bouncycastle.* 가 WEB-INF/lib 에 중복 적재되므로 + // 배포 WAR 기준으로 한 번 더 배제한다(사용 버전: bcprov/bcpkix-jdk18on 1.78.1). + exclude group: 'org.bouncycastle', module: 'bcprov-jdk15on' + exclude group: 'org.bouncycastle', module: 'bcpkix-jdk15on' + + // 구 groupId 의 dom4j(=1.6.1) 최종 차단. org.dom4j:dom4j:2.1.3 만 사용한다. + // (groupId 가 달라 Gradle 이 버전 충돌로 인식하지 못하므로 명시적으로 배제) + exclude group: 'dom4j', module: 'dom4j' } task settingEclipseEncoding { diff --git a/elink-online-common b/elink-online-common index 5e07100..66e51d1 160000 --- a/elink-online-common +++ b/elink-online-common @@ -1 +1 @@ -Subproject commit 5e07100c3df67c91c7bd11913014462b086af980 +Subproject commit 66e51d1755f725625f9231a0004ec098e7387c51 diff --git a/elink-online-transformer b/elink-online-transformer index eaf1416..8701f5d 160000 --- a/elink-online-transformer +++ b/elink-online-transformer @@ -1 +1 @@ -Subproject commit eaf1416e1309fc073d67cd1f28de0f4d2459d3ed +Subproject commit 8701f5d45971552fea5cac7fb71be3031a3bf1d7