Files
Rinjae c86c980b43 내부망 빌드 스크립트 추가: Gradle 없이 JDK만으로 빌드 지원
- build-internal.sh 및 build-internal.bat 생성
- 내부망 빌드 가이드 문서(BUILD-INTERNAL.md) 추가
2026-07-24 15:57:35 +09:00

49 lines
1.5 KiB
Batchfile

@echo off
rem damo-manager 내부망 빌드 스크립트 — JDK 만 필요 (Gradle 불필요)
rem 사용법: build-internal.bat
rem 산출물: build-internal\damo-manager.jar
setlocal
cd /d "%~dp0"
set OUT=build-internal
set VERSION=1.0.0
if exist VERSION set /p VERSION=<VERSION
if exist %OUT% rmdir /s /q %OUT%
mkdir %OUT%\stub-classes
mkdir %OUT%\main-classes
rem JDK 9+ 면 --release 8 로 Java 8 타깃 고정, JDK 8 이면 옵션 없이 컴파일
set RELEASE_OPT=
javac --release 8 -version >nul 2>&1 && set RELEASE_OPT=--release 8
rem 1. stub 컴파일 (scpdb 가짜 시그니처 — 컴파일 통과 전용, jar 에 포함되지 않음)
dir /s /b src\stub\java\*.java > %OUT%\stub-sources.txt
javac %RELEASE_OPT% -encoding UTF-8 -d %OUT%\stub-classes @%OUT%\stub-sources.txt
if errorlevel 1 goto :fail
rem 2. main 컴파일 (stub 을 classpath 로 사용 — Gradle 의 compileOnly 와 동일)
dir /s /b src\main\java\*.java > %OUT%\main-sources.txt
javac %RELEASE_OPT% -encoding UTF-8 -cp %OUT%\stub-classes -d %OUT%\main-classes @%OUT%\main-sources.txt
if errorlevel 1 goto :fail
rem 3. jar 패키징 (main 클래스만 포함)
(
echo Manifest-Version: 1.0
echo Implementation-Title: damo-manager
echo Implementation-Version: %VERSION%
echo Built-By: damo-manager internal build
echo Main-Class: com.eactive.ext.djb.DamoCli
) > %OUT%\MANIFEST.MF
jar cfm %OUT%\damo-manager.jar %OUT%\MANIFEST.MF -C %OUT%\main-classes .
if errorlevel 1 goto :fail
echo.
echo Build OK: %OUT%\damo-manager.jar
exit /b 0
:fail
echo Build FAILED
exit /b 1