728x90 [Error Handling]29 😡 java.lang.OutOfMemoryError: Java heap space 해결 방법(Eclipse, IntelliJ) 🚨 Error : 회사에서 OJT 기간에 주어진 과제를 수행하던 중 만난 에러이다. 테스트 코드를 통해 외부 파일을 읽는 작업에서 계속 에러가 발생했다. 🤓 원인 : 자바 힙 공간에 새로운 객체를 생성할 수 없는 경우에 발생한다고 한다. 현재 힙 크기(지정 혹은 기본)가 애플리케이션을 작동시키는 데에 충분하지 않거나, 생명주기가 긴 애플리케이션이 finalize를 과도하게 사용할 때 발생하는 에러이다. 🚒 해결 : JVM 옵션에서 힙 옵션을 통해 jvm의 최소 힙사이즈와 최대 힙사이즈를 설정하는 방법이 있다. 사용 메모리 확인하는 방법 Eclipse의 경우 Preferences > General에서 Show heap status를 체크하여 사용 메모리를 오른쪽 하단에서 확인 가능하다. IntelliJ의.. 2023. 5. 5. 😡 No tests found for given includes 에러(IntelliJ) 🚨 Error : 테스트 코드가 실행이 되지 않았다. 🤓 원인 : 찾아보니 test { useJUnitPlatform() } build.gradle에 위의 설정이 누락되어 발생한 문제였다. 🚒 해결 : 검색을 통해 이 문제를 해결한 블로그의 설명에 따르면, Junit 5를 사용하는 경우 위의 설정을 통해 테스트에서 Junit 5 플랫폼을 사용할 것이라고 정의할 수 있다고 한다. 위의 설정을 build.gradle에 추가하면 정상적으로 실행이 가능하다.(Junit 5와 Gradle을 함께 사용하려면 위 설정을 통해 Junit 종속성을 제공해야하는 것 같다.) 이 방법 이외에도 Preference > Build, Execution, Deployment > Build Tools > Gralde에서 위의 사진과.. 2023. 5. 5. 😡 JPA - Table '데이터베이스명.hibernate_sequence' doesn't exist 🚨 Error : 스프링 부트를 실행했는데 Table '데이터베이스명.hibernate_sequence' doesn't exist라는 오류가 발생했다. 🤓 원인 : 이는 말 그대로 데이터베이스에 hibernate_sequence 테이블이 존재하지 않아 발생하는 오류이다. 이것에 대해 여러 자료를 찾아보고 정리해 보았다. 우선 내가 테스트 중이었던 서버는 리팩토링 전의 서버라 그런지 @GeneratedValue(strategy = GenerationType.AUTO) GenerationType이 AUTO로 설정되어 있었다. application.properties에도 이렇게 설정되어 있었는데, 이는 Hibernate 5 이전 버전의 경우 @GeneratedValue(strategy = GenerationT.. 2023. 4. 25. 😡 [Spring Security] There is no PasswordEncoder mapped for the id "null" 🚨 Error : 회사의 인증 관련 서버를 테스트 실행하던 중에 이와 같은 에러를 만났다. 포스트맨에서 로그인 관련 api 테스트를 진행 중이었는데 위 에러와 함께 로그인이 되지 않았다. 🤓 원인 : Spring Security 4에서는 메모리 내 인증을 사용하여 암호를 일반 텍스트로 사용할 수 있었지만 Spring Security 5부터는 암호 관리 프로세스가 대폭 개편되어 암호의 인코딩과 디코딩 시 안전을 위한 메커니즘이 도입되었다. 회사의 이전 버전 테스트 데이터에는 이와 같은 암호화 메커니즘 과정이 누락된 데이터가 저장되었기 때문에 발생한 문제였다.(Spring Security 4가 사용된 서버에서 암호화 인코딩이 된 듯) 🚒 해결 : update 테이블명 set PASSWORD = concat(.. 2023. 4. 25. 😡 Spring Boot CONDITIONS EVALUATION REPORT 🚨 Error : 스프링 부트 실행 중에 처음보는 리포트가 줄줄이 나왔다. DEBUG 1251 --- [ main] ConditionEvaluationReportLoggingListener : 라고 나온거보니 로깅 관련된 리포트(?)인듯 하다. 🤓 원인 : 검색해보니 스프링 부트의 aapplication.properties 파일에서 debug=true를 설정하여 스프링 부트 애플리케이션에 대한 Auto-Configureation Report를 활성화되어 나온 것이다. 스프링 부트는 모든 설정이 1.매칭되는 항목과 2.그렇지 않은 항목 및 3.해당 작업에 대한 세부 정보를 제공한다고 한다. 이 매칭에 대한 정보가 나온 것이었다. 🚒 해결 : application.properties에 debug=true를 .. 2023. 4. 25. 😡 Eclipse Requesting Java AST from selection 에러 🚨 Error : 이클립스로 테스트 진행 중 이러한 에러가 발생했다. 🤓 원인 : 여기저기 검색해보니 이클립스 JDT(Java Development Tool)의 버그(?) 문제인듯 하다. 작업을 수행하는 데에는 문제가 없으나 계속 에러 문구가 나와 작업에 방해가 되므로 에러가 더는 뜨지 않게 하는 방법을 찾아보았다. 🚒 해결 : 위 설명과 같이 Eclipse - Setting(Preferences) - Java - Editor -Mark Occurences에서 'Mark occurrences of the selected element in the current file.'의 체크 박스를 해제해주었더니 더이상 나오지 않았다. 🤔 의문점 : 근본적인 원인은 자세히 찾아보지 않아 모른다. 2023. 4. 24. 😡 AWS CodeDeploy UnknownError : CodeDeploy agent was not able to receive the lifecycle event. 🚨 Error : CodeDeploy agent was not able to receive the lifecycle event. Check the CodeDeploy agent logs on your host and make sure the agent is running and can connect to the CodeDeploy server. GithubAction에서 정상적으로 빌드 작업까지 끝나고, S3까지 빌드 파일이 정상적으로 압축된 것을 확인했다. 그러나, CodeDeploy에서 위의 에러로 배포가 되지 않았다. EC2에서 확인해 보니 빌드파일이 다운로드조차 되지 않았다. 🤓 원인 : 구글링을 통해 알아보니 이 에러는 2가지의 이유로 발생한다고 한다. 1. CodeDeploy IAM 역할이 인.. 2023. 3. 18. 😡 contextLoads() FAILED : GithubActions에서 토큰값을 읽게 하기 🚨 Error : 아주 오랜만에 GithubActions를 만졌다. 기술면접을 대비하기 위해 만든 디스코드 봇의 리팩토링을 진행하기 전에 GithubActions로 배포 자동화를 해놓을 생각이었다. 기본적으로 Actions에 있는 Java With Gradle을 레파지토리에 commit 하고, Gradle.yml 파일을 수정해 AWS S3에 업로드하는 작업부터 진행했다. 그런데, 빌드가 바로 실패했다. 두 달 여 전 메인프로젝트에서 같은 일이 있었기 때문에 그때 블로그한 내용을 보고 yml 파일을 수정했다.(관련 링크) InterviewerApplicationTests > contextLoads() FAILED java.lang.IllegalStateException at DefaultCacheAware.. 2023. 3. 18. 이전 1 2 3 4 다음 728x90