전체 글 381

일간에러) java: incompatible types: java.lang.String cannot be converted to org.slf4j.Marker

Intro 오래전부터 이어진 Spring Boot 버전 마이그레이션 작업의 일환으로, 메인급 프로젝트들의 작업은 마무리가 되었지만 여러가지 요구사항에 의해 fork 이후 여러 갈래로 갈라진 branch 격의 프로젝트들도 손을 봐야 하는 상황. 워낙 스프링부트 마이그레이션 작업 후 고생을 많이 했던 덕에 이제는 왠만한 오류는 떠도 한번쯤 봤던 내용들이기 때문에 크게 당황하는 일도 없고, 속도도 꽤나 붙은 상황이다. 그러던 중 간만에 새로운 에러메시지가 보여 반가운 마음에 미래를 대비해 정리 해 두려고 한다. 오류 java: incompatible types: java.lang.String cannot be converted to org.slf4j.Marker 단순하게 log를 찍는 상황인데, 기존에 작성 ..

일간에러) 3 Spring WebApplicationInitializers detected on classpath

Intro 톰캣 8.5 버전으로 프로젝트를 실행하는데 어플리케이션이 기대한 대로 동작 하지 않았다. 로컬에서는 아무 문제 없이 잘 작동했는데 도커로 톰캣 컨테이너를 띄워 실행키기면 계속 문제가 발생했다. 심지어 에러 로그도 쉽게 찾을 수가 없었다. tomcat/logs 경로에서 catalina.2022-04- 으로 시작하는 로그에서는 마치 정상적으로 실행 된 것 처럼 보였는데 localhost.2022-04- 로 시작되는 로그 파일을 확인 하자 그제서야 아래와 같은 에러 메시지를 보여줬다. 13-Apr-2022 13:10:54.092 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log 3 Spring WebApplica..

Development/Daily Error 2022.04.15 (2)

Apache Solr 시작하기

https://solr.apache.org/guide/8_11/solr-tutorial.html Intro Apache Solr 공식 튜토리얼 문서를 따라 진행해보며 조금은 더 이해하기 쉽게 각색 해 보았습니다. 모두 아시는 것 처럼 최고의 레퍼런스는 공식 문서임에는 틀림이 없지만 공식문서가 항상 가장 이해하기 쉬운 것은 아닙니다. 최대한 쉽게 작성하기 위해 많은 노력이 있었겠지만 애초에 문서 작성자와 튜토리얼 사용자의 눈높이가 다를 수 밖에 없고 언어도 영어로 작성되었기 때문에 시간과 집중력이 더 많이 필요 합니다. Apache Solr를 처음 사용해보는 입장에서도 쉽게 따라할 수 있도록 생소한 용어들에는 주석을 달았으며 어려울 수 있겠다고 생각 되는 부분들은 최대한 자세히 풀어서 진행 해 보았습니다...

Data/Search Engine 2022.04.12

가볍게 읽어보는 Kotlin) 3. 제어문

안녕하세요. 지난 글에 이어서 이번에는 코틀린에서의 제어문에 대해 알아보려고 합니다. 기존에 이미 자바에 대해 알고있는 개발자들을 대상으로, 코틀린이 java와 다르다고 하는데 얼마나 많이 그리고 어떤것들이 다른지를 알기 쉽게 간단하게 안내하는걸 목표로 한 시리즈 입니다. 기본적으로 자바의 문법을 알고 있음을 전제로 하고 어떤 점들이 다른지 간략하게 코틀린의 제어문에 대해 알아보겠습니다. 조건문 IF if 의 사용은 사실 특별할 게 없기 때문에 거의 같습니다. 자바에서 처럼 if와 else를 활용해서 다양한 조건을 걸어 줄 수 있습니다. val a1 = 5 if (a1 < 10) { println("a1 < 10") } else if (a1 > 10) { print("a1 > 10") } if (a1 =..

Programming/Kotlin 2022.04.10

java) 래퍼 클래스의 동등 연산자 사용을 피해야 하는 이유

Intro 매주 일요일 11시 30분부터 오후 1시까지, Leetcode에서 진행하는 Contest에 참여하고 있습니다. 여느 날처럼 문제를 풀고 있었고, 로직상 분명 통과 할 거라고 생각했는데, 생각지도 못한 엉뚱한 곳에서 자꾸 무한 루프가 발생하는 일이 생겼습니다. 그래서 디버깅을 진행 하던 중 눈으로 보고도 믿기 힘든 상황이 발생 했습니다. 디버거의 Variables 를 보면, poll 의 value도 128, peek의 value도 128 이지만, 둘의 동등 비교 결과인 same의 결과가 false 로 되어 있습니다. 이 때문에 if 문에서 조건 만족 상황의 블럭에 들어가지 않고 else 구문을 타고 있습니다. 순간적으로 당황을 하긴 했지만, 예전에 같은 경우가 한번 있었고, 그때는 단순 버그나 ..

Programming/Java 2022.04.10