피드로 돌아가기
BugBench: a developer origin story and practical guide for VS Code / Kiro users
Dev.toDev.to
Infrastructure

JVM 기반 분석 엔진의 LSP 패턴 전환을 통한 Multi-Editor 확장성 확보

BugBench: a developer origin story and practical guide for VS Code / Kiro users

Simphiwe Twala2026년 5월 25일5intermediate

Context

NetBeans 및 IntelliJ 기반의 Java/Kotlin 정적 분석 엔진이 특정 IDE 종속성으로 인해 확장성에 한계 직면. 분석 로직의 재작성 없이 VS Code 및 Kiro 등 현대적 에디터 환경으로 생태계를 확장해야 하는 요구사항 발생.

Technical Solution

  • 분석 코어의 90% 이상을 유지하기 위해 Java/Kotlin 엔진을 JVM 기반 Server로 래핑한 decoupled 구조 설계
  • TypeScript 기반 Client를 구축하여 에디터 UI와 JVM 서버 간의 통신 체계를 수립한 Language Server Protocol 패턴 적용
  • Git diff awareness 기능을 구현하여 전체 스캔 대신 변경 파일 중심의 증분 분석으로 리소스 최적화
  • SARIF(Static Analysis Results Interchange Format) 표준 출력 채택을 통한 CI/CD 파이프라인 및 외부 보안 대시보드 연동성 확보
  • JVM 서버 아티팩트와 TS 클라이언트를 단일 VSIX 패키지로 묶어 배포 및 설치 편의성을 높인 Self-contained 배포 전략 수립

- 기존 레거시 분석 로직 재작성 전 JVM Server 래핑 가능 여부 검토 - CI 통합을 위해 분석 결과물의 표준 포맷(SARIF 등) 채택 고려 - 전체 스캔 부하 감소를 위한 Git diff 기반의 증분 분석 로직 설계 반영 - 플랫폼 독립적인 엔진 구축을 통한 Multi-IDE 지원 전략 수립

원문 읽기