본문 바로가기

개발자5

[Spring][Gradle] Could not find method developmentOnly() for arguments [org.springframework.boot:spring-boot-devtools] on object of type 이슈 1. 문제 상황CI 파이프라인 구축 및 실행 중 아래와 같은 오류가 떨어졌다.Could not find method developmentOnly() for arguments [org.springframework.boot:spring-boot-devtools] on object of type 2. 문제점build.gradle 중 plugins에  Spring Boot('org.springframework.boot')의 활성화가 false 처리 되어 있었다.현재 개발 중인 모듈은 특정 어플리케이션의 하위 모듈로써 Spring boot를 비활성화 해 놓았었다. 그런데 아직 전체 어플리케이션이 구축되지 않아, 내부에 임시로 Servlet 및 @SpringBootApplication 클래스를 생성하고 실행시켜서 .. 2024. 12. 1.
[Spring] mockStatic의 scope 제한을 하지 않아 발생하는 문제 1. 문제 상황Unit test를 위해 static 유틸 클래스를 mock화시켜서 놓았었다.  그런데 빠른 문제 해결을 위해서 자세히 문서를 찾아보지 않고 코드를 작성하다보니, 클래스의 static 메서드로 MockStatic 객체를 선언해버렸다. (나름 코드 중복 제거를 위해,,) 물론 코드를 추가하고 IntelliJ에서 테스트를 한~두번 정도 돌려보아도 문제가 발생하지 않아 넘어갔었었다. (운좋게 MockStatic이 실행되기 전 static 클래스가 실행되었다..) 그런데 시간이 지나 ./gradlew test를 반복하다보니 랜덤하게 유틸 클래스에 대한 테스트가 실패하는 것을 발견하게 되었다. 2. 문제점그렇게 문제의 원인을 찾아가던 중 단순 web search로는 도저히 문제가 해결되지 않아서 공.. 2024. 11. 30.
[CSS] Safari에서 scroll 안됨 1. 문제 상황이 문제가 발생하기 이전, CSS에 overscroll-behavior-y: none를 적용하여 모바일에서 아래로 다운 스크롤했을 때 자동 새로고침되지 않도록 하였다.그런데 이 CSS를 적용하니 safari에서 마우스 휠 스크롤이 동작하지 않았다. 직접 scroll 바를 잡고 움직이는 것은 가능하였다.(다른 브라우저에서는 문제 없이 동작) 2. 문제점"overscroll-behavior-y" CSS property를 html에 직접적으로 설정하니 문제가 발생했다. 3. 해결 방법body 혹은 특정 class/id에 설정을 해주면 모바일에서 아래로 다운 스크롤했을 때 자동 새로고침되지 않으면서 safari에서도 마우스 휠을 통한 scroll이 가능하다. 2024. 11. 1.
[React] PM2를 활용한 EC2에 React 무중단 배포 Github Action과 AWS Codedeploy를 활용한 React 어플리케이션의 CICD 파이프라인을 구축하고 있었다. 현재 구상중인 어플리케이션의 구조상에서 Front는 React로만 구성되었다.  EC2에 접속하여 yarn start / npm start와 같이 React를 실행해주면, EC2와 연결되어 있는 상태에서는 EC2 public domain 및 port를 사용하여 접속할 수 있지만 연결(접속)을 끊으면 어플리케이션이 중단된다.그에 따라 개발자는 EC2의 under level에서 react가 돌아갈 수 있게끔해야 한다.  또한, 단순 패키지 매니저들을 사용하여 어플리케이션을 실행하면 다운타임이 반드시 발생한다. 운영 서비스에서 다운 타임이 발생하는 문제는 치명적임으로 이를 고려하여 C.. 2024. 10. 13.