Files
eapim-online/reposilite.md
T
2026-04-03 17:22:56 +09:00

105 lines
2.6 KiB
Markdown

# Reposilite 3 연동 가이드
## 구성 개요
기존 Nexus(`https://nexus.eactive.synology.me:8090`) 대신 로컬 Reposilite 3(`http://localhost:8080`)를 통해 의존성을 다운로드한다.
Reposilite의 `private` 레포지토리에 Nexus `maven-public`을 Mirror로 등록하여 캐싱한다.
---
## 1. Reposilite 3 설정
관리자 패널 → **Repositories**`private` 저장소 → **Edit**
**Mirrored repositories** 항목에 추가:
```
https://nexus.eactive.synology.me:8090/repository/maven-public/
```
---
## 2. 변경된 파일
### `build.gradle` (루트)
- `nexusUrl``reposiliteUrl` 변수명 변경
- `allprojects.repositories` URL을 Reposilite로 변경
- credentials를 `gradle.properties` 변수로 참조
```groovy
def reposiliteUrl = "http://localhost:8080"
allprojects {
repositories {
maven {
url "${reposiliteUrl}/private"
allowInsecureProtocol = true
credentials {
username = reposiliteUser
password = reposilitePassword
}
}
}
}
```
### `elink-online-core/build.gradle`
- 단독 빌드용 `repositories` 블록의 URL 및 credentials 동일하게 변경
```groovy
// FOR LOCAL
repositories {
maven {
url "${nexusUrl}/private"
allowInsecureProtocol = true
credentials {
username = reposiliteUser
password = reposilitePassword
}
}
}
```
### `gradle.properties` (신규 생성)
인증 정보를 별도 파일로 분리. `.gitignore`에 이미 등록되어 있어 git에 올라가지 않는다.
```properties
reposiliteUser=admin
reposilitePassword=<reposilite-token>
```
---
## 3. 서브모듈별 repositories 현황
| 모듈 | repositories 블록 | 비고 |
|------|------------------|------|
| `build.gradle` (root) | `allprojects { ... }` | 모든 서브모듈에 상속 |
| `elink-online-core` | 별도 정의 | 단독 빌드 대응용 (`// FOR LOCAL`) |
| `elink-online-core-jpa` | 없음 | root 상속 |
| `elink-online-emsclient` | 없음 | root 상속 |
| `elink-online-transformer` | 없음 | root 상속 |
| `elink-online-common` | 없음 | root 상속 |
| `kjb-errors` | 없음 | root 상속 (기존 `mavenCentral()` 제거) |
---
## 4. 빌드 방법
```bash
# 캐시 삭제 후 Reposilite에서 새로 받기
./gradlew build --refresh-dependencies
# 테스트 스킵
./gradlew build -x test --refresh-dependencies
```
---
## 참고
- `publishing` 블록(아티팩트 배포)은 각 서브모듈에서 여전히 Nexus URL을 사용 중
- Reposilite로 배포까지 전환하려면 각 서브모듈의 `nexusUrl``publishing` 블록 수정 필요