c86c980b43
- build-internal.sh 및 build-internal.bat 생성 - 내부망 빌드 가이드 문서(BUILD-INTERNAL.md) 추가
49 lines
1.5 KiB
Batchfile
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
|