sitelink1  
sitelink2  
sitelink3  

eclipse 에 생성한 gradle web project 에서 gradle refresh 할때마다 context root 가 초기화 되는 현상의 원인과 해결책을 gpt 에게 물어보았다.

 

Eclipse에서 Gradle로 생성한 웹 프로젝트에서 Gradle Refresh를 할 때마다 context root가 초기화되는 현상은 Gradle과 Eclipse 간 설정 충돌로 인해 발생합니다.

이 문제는 Gradle이 Eclipse의 설정을 덮어쓰거나 Eclipse의 project metadata에 context root 설정을 유지하지 못하는 경우에 발생합니다.

 

원인

Gradle에서 Eclipse 프로젝트를 구성할 때, eclipse-wtp 플러그인이 사용되며, 이 플러그인은 프로젝트의 context root 설정을 포함한 여러 Eclipse 웹 프로젝트 관련 메타데이터를 자동으로 생성합니다.

하지만, build.gradle 파일에 context root 관련 설정이 명시되지 않으면, 기본 설정으로 초기화될 수 있습니다.

 

해결 방법

1. build.gradle 파일에 context root 설정 추가

build.gradle 파일에 eclipse 또는 eclipse-wtp 플러그인을 사용해 context root를 명시적으로 설정합니다.

다음과 같이 설정할 수 있습니다:

 

plugins {

    id("eclipse-wtp")

}

 

eclipse {

    wtp {

        component {

            contextPath = 'your-context-root' // 원하는 context root로 설정

        }

    }

}

Gradle을 Refresh할 때마다 이 설정이 적용되며, context root가 초기화되지 않습니다.

 

2. Eclipse에서 수동으로 설정 후 Gradle Build 자동화 방지

수동으로 context root를 설정한 후, Gradle에서 Eclipse 설정 파일을 덮어쓰지 않도록 build.gradle 파일에서 eclipse-wtp 관련 자동화 기능을 비활성화할 수도 있습니다:

 

tasks.named("eclipseWtpComponent").configure {

    enabled = false

}

이 방식은 context root 설정을 수동으로 관리하도록 해줍니다.

 

3. eclipse 설정을 커스터마이징한 후 Refresh 수행

Gradle 설정에 context root를 명시하고 나서 Eclipse에서 Refresh Gradle Project를 수행하면 context root가 유지될 가능성이 큽니다.

 

이 방법을 통해 Gradle 프로젝트를 Refresh할 때 context root 초기화 문제를 방지할 수 있습니다.

 

2번을 수행해봤지만 프로젝트 빌드 오류가 발생한다.

현재는 1번 방안만으로 해결이 가능해서 나머지는 2번, 3번은 참고용으로 기록해 둔다.

 

 

 

 

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
17 라이브러리 개발 프로젝트에서 jar 로 build 후 파일을 특정 로컬 경로로 copy 하는 예제 황제낙엽 2025.02.07 50
16 [Gemini] gradle init 으로 프로젝트 생성하는 절차 내용 황제낙엽 2025.01.24 59
» [ChatGPT] eclipse 의 web project 에서 gradle refresh 때마다 context root 가 초기화 황제낙엽 2024.11.14 80
14 Gretty, Jetty 에서 ssl 적용 황제낙엽 2024.11.12 121
13 [ChatAI] Gradle Wrapper의 버전을 업그레이드하는 절차 황제낙엽 2024.11.12 119
12 eclipse 용 gradle web application sample project (no spring) file 황제낙엽 2024.11.12 93
11 [phind] Gradle 프로젝트를 생성할 때 nested sub project 가 함께 생성되는 이유 황제낙엽 2024.11.12 77
10 IDE(IntelliJ, Android Studio, Eclipse) 에서 build.gradle 에 dependencies 추가후 의존 라이브러리 갱신하기 황제낙엽 2024.10.30 113
9 [POST, 2021.06.28] Gradle을 이용해 Web 어플리케이션을 만들고 빌드하고 실행하기 file 황제낙엽 2023.12.30 75
8 build.gradle 의 dependencies 황제낙엽 2023.12.29 70
7 error: unmappable character 황제낙엽 2023.12.29 63
6 Task :compileJava FAILED 황제낙엽 2023.12.29 88
5 사용자 라이브러리 파일(*.jar) 를 의존성에 추가하는 방법 황제낙엽 2023.12.28 80
4 Windows 에 Gradle 설치 황제낙엽 2023.12.23 78
3 Eclipse, Gradle 프로젝트 생성, Dynamic Web Project 로 변경 황제낙엽 2023.12.23 80
2 [2014~2015] gradle 영문 튜토리얼 (Getting Started With Gradle) 황제낙엽 2023.07.13 745
1 Maven, Gradle 의 비교와 Gradle + Eclipse에서 gradle의 빌드가 안될때 황제낙엽 2023.07.11 83