반응형
폐쇄망(offline network) 환경에서 Gradle을 사용하는 경우, 외부 인터넷 연결 없이도 Gradle 빌드할 수 있도록 설정이 필요하다. Gradle은 기본적으로 필요한 의존성 라이브러리를 인터넷에서 다운로드한다. 그러나, 폐쇄망 환경에서는 외부 저장소에 접근할 수 없으므로 로컬 저장소를 사용하거나 의존성을 미리 다운로드하여 로컬 환경에 저장해야한다.
폐쇄망 Gradle 설정 방법은 다음과 같다.
| 의존성(jar) 다운로드
폐쇄망 환경에서는 mavenCentral()을 사용할 수 없다.
따라서 인터넷이 되는 환경에서 필요한 의존성들을 다운로드한 후, 이를 폐쇄망 환경에 복사해 사용할 수 있다.
의존성들은 maven url을 통해 다운받거나, 직접 다운로드 받으면 된다.
| 로컬 저장소 사용
의존성 파일들을 미리 다운로드하여 로컬 저장소에 배치한 후, build.gradle 파일에서 로컬 저장소를 참조하도록 설정한다.
1. m2
repositories {
mavenLocal() /*.m2를 참조 */
}
2. 사용자 디렉토리
repositories {
maven {
url uri("C:/user/imcodding/local/repo/")
}
}
반응형
| 특정 플러그인 사용
폐쇄망 환경에서 사용할 수 있는 플러그인들(예: Nexus, Artifactory 등)을 설정하여 내부 저장소에서 의존성을 다운로드할 수도 있다.
repositories {
maven {
url "http://your-nexus-repository/repository/maven-releases/" /* 공유 repository */
}
}
| ~/.gradle/caches
gradle 캐시는 최초 빌드 시에 생기므로, 따로 가져와서 설정해줄 필요는 없다.

| ~/.gradle/caches 언제 사용?
- 의존성 다운로드: Gradle은 프로젝트 빌드에서 필요한 외부 라이브러리를 처음 사용할 때, 이를 ~/.gradle/caches에 저장합니다. 이후에는 네트워크 요청을 하지 않고 로컬 캐시에서 의존성을 제공합니다.
- 업데이트 확인: Gradle은 캐시된 의존성이 업데이트가 필요한지 체크합니다. 만약 새로운 버전이 필요하다면, 다시 저장소에서 해당 버전을 다운로드하여 캐시를 갱신합니다.
- 빌드 아티팩트 저장: 빌드 결과물이 생성되면 Gradle은 이들을 캐시하여 이후 빌드에서 동일한 작업을 반복하지 않도록 합니다.
- 리소스 및 플러그인 관리: 프로젝트에서 사용하는 플러그인이나 리소스 또한 캐시하여, 이후 빌드 시에 재사용할 수 있도록 합니다.
반응형
'Web' 카테고리의 다른 글
[ spring ] egovframework(전자정부프레임워크) log4j 이슈해결 maven & gradle (0) | 2025.04.01 |
---|---|
[ spring ] egovframework(전자정부프레임워크) 3.9.0 적용 maven & gradle (0) | 2025.04.01 |
[ Gradle ] gradle exclude dependency (gradle 의존성 제외) (0) | 2025.03.31 |
[ spring ] 폐쇄망(내부망) gradle 세팅 및 이슈 해결 (0) | 2025.03.27 |
[ spring ] maven gradle 변환(마이그레이션) (0) | 2025.03.25 |