inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

176만명의 커뮤니티!! 함께 토론해봐요.

SEVERE: A child container failed during start LifecycleException: Failed to start component 해결방법

미해결

스프링 부트 - 핵심 원리와 활용

java -jar embed-0.0.1-SNAPSHOT.jar 시 아래와 같이 에러가 발생하는 경우 org.apache.catalina.core.ContainerBase startInternal SEVERE: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@247bddad] at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:923) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:886) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1383) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:916) at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:252) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.StandardService.startInternal(StandardService.java:430) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:926) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.startup.Tomcat.start(Tomcat.java:485) at hello.embed.EmbedTomcatSpringMain.main(EmbedTomcatSpringMain.java:36) Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@247bddad] at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198) at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4829) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4962) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1393) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1383) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:916) ... 16 more Caused by: java.lang.IllegalArgumentException: The main resource set specified [C:\embed\build\libs\tomcat.8080\webapps\] is not valid at org.apache.catalina.webresources.StandardRoot.createMainResourceSet(StandardRoot.java:777) at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:734) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ... 25 more main 클래스에 코드를 수정하면 정상적으로 에러가 발생하지 않습니다. public class EmbedTomcatSpringMain { public static void main(String[] args) throws LifecycleException, IOException { System.out.println("EmbedTomcatSpringMain.main"); // 톰캣 설정 // 톰캣 설정 Tomcat tomcat = new Tomcat(); ... // 스프링 MVC 디스패처 서블릿 생성, 스프링 컨테이너 연결 ... String docBase = Files.createTempDirectory("tomcat-basedir").toString(); // 디스패처 서블릿 등록 Context context = tomcat.addContext("", docBase); ... tomcat.start(); } } 참고) 맥북 사용자가 아닌 윈도우 사용자이기 때문에 윈도우에서 나타나는 에러를 공유드렸습니다. 맥북은 따로 확인하지 못하기 때문에 공유한 부분에 대해 양해해주세요.

  • spring
  • spring-boot
  • prometheus
  • grafana
Angma 댓글 2 좋아요 10 조회수 2278

필터 유즈케이스 관련해서 질문있습니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요?예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] - 강의 7분 정도에서 모든 고객의 요청 로그를 남기는 요구사항이 있다면 필터를 사용하라고 하셨는데, 위 요구사항의 예시로, 1개의 url 요청을 어떤 클라이언트가 1초에 수십번 요청하는 걸 감지하는 경우로 생각해도 괜찮을까요?

  • spring
  • mvc
백린이 댓글 1 좋아요 0 조회수 261

127.0.0.1에서 연결을 거부했습니다.

미해결

따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]

사이트에 연결할 수 없음 127.0.0.1 에서 연결을 거부했습니다. 다음 방법을 시도해 보세요. 연결 확인 프록시 및 방화벽 확인 ERR_CONNECTION_REFUSED 그전에 연결 잘되다가 갑자기 이러는 이유가 멀까요..?

  • react
  • redux
  • node.js
  • 웹앱
  • mongodb
강태준 댓글 1 좋아요 0 조회수 9530

NoClassDefFoundError가 아닌 UnsupportedClassVersionError가 뜨는 경우 해결방법

미해결

스프링 부트 - 핵심 원리와 활용

NoClassDefFoundError가 아닌 UnsupportedClassVersionError가 발생하는 경우 java 버전이 하위 버전인 경우일 때 나타나는 것을 확인했습니다. 자바 17 버전으로 하셔야 강의처럼 NoClassDefFoundError가 나타납니다. 아래는 8, 11 버전에 대한 에러를 확인해서 공유드립니다ㅎㅎ Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.UnsupportedClassVersionError: hello/embed/EmbedTomcatSpringMain has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:756) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:468) at java.net.URLClassLoader.access$100(URLClassLoader.java:74) at java.net.URLClassLoader$1.run(URLClassLoader.java:369) at java.net.URLClassLoader$1.run(URLClassLoader.java:363) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:362) at java.lang.ClassLoader.loadClass(ClassLoader.java:418) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) at java.lang.ClassLoader.loadClass(ClassLoader.java:351) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:601) 위의 에러는 java8 버전일 때 나타나는 에러입니다. Error: LinkageError occurred while loading main class hello.embed.EmbedTomcatSpringMain java.lang.UnsupportedClassVersionError: hello/embed/EmbedTomcatSpringMain has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0 위의 에러는 java11 버전일 때 나타나는 에러입니다. 프로젝트랑 환경변수가 java17로 되어 있어도 cmd나 터미널을 이용해서 자바버전을 확인하세요

  • spring
  • spring-boot
  • prometheus
  • grafana
댓글 1 좋아요 0 조회수 729

질문있습니다!

미해결

함수형 프로그래밍과 JavaScript ES6+ 응용편

안녕하세요. 질문 있어서 글 올립니다. 만약 복잡한 reduce 함수 하나 대신 3개의 map과 간단한 reduce 함수로 분리한다면 전자는 반복을 한번만 하면 되고 후자는 반복을 총 4번 해야한다는 계산이 서는데 왜 성능상 차이가 없는 것인지 궁금합니다. 스스로 찾아보려고 햇는데 실력이 부족한지 관련 내용을 찾지 못해 질문드립니다ㅠㅠ

  • javascript
  • 함수형-프로그래밍
Milkyway 댓글 2 좋아요 1 조회수 426

음...

미해결

정혜경 판타스틱 자료구조 in C

addfirst 랑 addlast 를 왜 나누는지 이해가 안됩니다. addlast 코드만 있어도 추가하는데는 문제가 없어보이는데...

  • c
gwisej68 댓글 1 좋아요 0 조회수 446

형 변환 질문

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

숫자를 문자열로 바꿀때 String.valueOf(); / Integer.toString(); 이 두가지를 사용하여 알려주셧는데 퀴즈에서 String busNO = "1234"; 를 사용하니 1234가 문자열로 바뀌었더라구요. (sout(busNo + 10)을 입력하니 123410이 나왔습니다.) 위에서 알려주신 두가지 방법과 퀴즈에 나온 방법이 무슨 차이가 있을까요?

  • java
  • 객체지향
다비드 댓글 1 좋아요 0 조회수 314

형변환 후반전 질문

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

93과 98.8을 각각 문자열로 변환한 다음에 저희가 사용하는 07 폴더에서는 계속해서 93과 93.8이라는 숫자는 컴퓨터가 숫자가 아닌 문자열로 인식된 상대 인가요? (93과 98.8을 더하면 9398.8인 형태로) 그 다음에 다시 문자열을 숫자로 바꾼 과정에서 컴퓨터가 숫자로 인식을 하는건가요?(93과 98.8을 더하면 191.8인 형태로)

  • java
  • 객체지향
다비드 댓글 1 좋아요 0 조회수 282

8:41 질문

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

@PutMapping("/api/v2/members/{id}") public UpdateMemberResponse updateMemberV2( @PathVariable("id") Long id, @RequestBody @Valid UpdateMemberRequest request) { memberService.update(id, request.getName()); return new UpdateMemberResponse(id, request.getName()); } 파라미터로 들어온 값으로 UpdateMemberResponse를 만들어주지 않고 memberService.findOne을 통해 하는 이유가 있을까요?

  • java
  • spring
  • spring-boot
  • jpa
댓글 1 좋아요 0 조회수 517

무결성 제약조건이 위배되는 경우에 대한 예외처리에 대해 질문드립니다

해결됨

실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)

안녕하세요 강사님. Kotlin + JPA에 대해 마땅히 질문남길 곳이 없어서 질문드리게 되었습니다😅 Book 엔티티에서 name 을 유니크 키로 지정해서 중복된 값을 설정하려고 하면 아래처럼 IllegalArgumentException 을 던져주게 하는 코드를 작성하고자 했습니다. @Transactional fun saveBook(request: BookRequest) { val book = Book(request.name, request.type) try { bookRepository.save(book) } catch (e: DataIntegrityViolationException) { throw IllegalArgumentException("이미 등록된 도서입니다.") } } 그런데 JPA의 영속성 컨텍스트로 인해 @Transactional 이 붙은 메소드에서 DataIntegrityViolationException 를 처리해주기 위해선 flush() 를 직접 호출해서 쿼리를 실행시켜야 한다는 것을 알게되어 아래와 같이 코드를 수정했고, 테스트 코드에서 정상적으로 IllegalArgumentException 이 처리되는 것을 확인할 수 있었습니다. @Transactional fun saveBook(request: BookRequest) { val book = Book(request.name, request.type) try { bookRepository.save(book) bookRepository.flush() } catch (e: DataIntegrityViolationException) { throw IllegalArgumentException("이미 등록된 도서입니다.") } } 이렇게 코드를 작성해놓고 보니 하나의 메소드에서만 이렇게 무결성 제약조건 위배에 대한 처리를 한다면 상관이 없겠지만 여러 메소드에서 무결성 제약조건을 위배하는 경우에 대해 각기 다른 메시지를 담은 예외를 던지게 된다면 중복 코드가 너무 많이 발생할 것 같다는 생각이 들더라구요. 이런 경우에 아래처럼 확장함수와 람다를 사용해서 예외 처리를 해도 괜찮을까요? inline fun <reified T, ID, R> JpaRepository<T, ID>.flushOrThrow(exception: Throwable, block: JpaRepository<T, ID>.() -> R): R { try { val result = block() flush() return result } catch (e: DataIntegrityViolationException) { throw exception } } @Transactional fun saveBook(request: BookRequest) { val book = Book(request.name, request.type) bookRepository.flushOrThrow(IllegalArgumentException("이미 등록된 도서입니다.")) { save(book) } } 이런 방법을 썼을 때 코드가 너무 복잡해지진 않을지, 협업을 하는 경우에 문제가 되진 않을지, 이런 경우가 발생하면 다른 분들은 어떤 방법을 사용하시는지 고민되어 질문 남깁니다!🙏

  • java
  • spring
  • kotlin
  • spring-boot
  • 리팩토링
  • jpa
콜라곰 댓글 1 좋아요 2 조회수 1497

스크롤 위치에 따른 페이지 변화 - scroll 이벤트 에 대한 질문

미해결

인터랙티브 개발 실무 끝장내기 [역량 강화편]

안녕하세요 강사님 이해가 되지 않아서 질문드립니다. 저는 조건을 한글로 생각해서 저렇게 주석으로 정리를 해놨습니다. if문의 조건을 봤을땐 조건이 맞아서 console.log에 scroll 라는 변수도 정상적으로 찍힙니다. 제가 궁금한것은 2개의 조건이 스크롤 할때마다 맞는데 어떻게 스크롤 값이 526 이 되거나 넘어가면 pageNum의 값이 증가하는걸까요? 많이 헷갈려서 이부분만 여러번 보는듯합니다. 아니면 저의 해석이 잘못된 걸까요? // 1. 스크롤의 값이 sectionNum의 Top 시작 값 - 화면 높이 값/3 보다 큰가? = 스크롤의 값이 -250보다 큰가? // 2. 스크롤의 값이 sectionNum의 Top 시작 값 - 화면 높이 값/3 + sectionNum의 전체 높이 값 보다 작은가? = 스크롤의 값이 526 보다 작은가? for(let i = 0; i < maxNum; i++){ // 1. 스크롤의 값이 sectionNum의 Top 시작 값 - 화면 높이 값/3 보다 큰가? = 스크롤의 값이 -250보다 큰가? // 2. 스크롤의 값이 sectionNum의 Top 시작 값 - 화면 높이 값/3 + sectionNum의 전체 높이 값 보다 작은가? = 스크롤의 값이 526 보다 작은가? if(scroll > sectionNum[i].offsetTop - window.innerHeight/3 && scroll < sectionNum[i].offsetTop - window.innerHeight/3 + sectionNum[i].offsetHeight){ pageNum = i; console.log(scroll); if(scroll > sectionNum[i].offsetTop - window.innerHeight/3){ console.log('큼1') } if(scroll < sectionNum[i].offsetTop - window.innerHeight/3 + sectionNum[i].offsetHeight){ console.log('큼2'); } // console.log(sectionNum[i].offsetTop); // 8 785 1562 2339 // console.log(window.innerHeight/3) // 258 // console.log(sectionNum[i].offsetHeight); // 777 // 8 - 258 = -250 // -236 + 734 = 527 // console.log(sectionNum[i].offsetTop - window.innerHeight/3 + sectionNum[i].offsetHeight); // 526 // console.log(scroll) // console.log(pageNum); // console.log(sectionNum[i].offsetTop - window.innerHeight/3) // -250 // 한번 돌았으면 break; } }

  • javascript
  • 인터랙티브-웹
우치하마다라 댓글 1 좋아요 0 조회수 720

메인엑티비티에서 이미지뷰 오류

해결됨

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

여기서 ImageView에 왜 빨간 줄이 나오는 걸까요...

  • android
  • kotlin
  • firebase
정소열 댓글 1 좋아요 0 조회수 591

input 태그 한글 작성시 '마지막 글자 밀림' 오류와 '문자열 마무리' 오류

미해결

안녕하세요 !! 다름이 아니라 현재 제가 일반 브라우저가 아닌 C#기반으로 돌아가는 웹을 작업중인데요 input 태그에 한글 작성시 '마지막 글자 밀림'오류와 '문자열 마무리'오류가 발생되어 혹시 해결 방법을 아시는 분이 있을까 하여 글 남깁니다..! 제발 도와주세요 감사합니다 !

  • C#
  • javascript
  • html
  • css
  • node.js
  • ejs
zy 댓글 1 좋아요 0 조회수 1543

이력서 사진 관련

해결됨

내 가치를 높이는 노션 이력서 만들기

저런 리안님을 대표하는 이미지가 없어서 그런데, 실물사진을 넣기에는 뭔가 부담이 되고 사진이 필수인지 + 여태껏 사진이 없는 문서로 지원을 많이해왔는데 첫인상에 좀 이게 이슈가 있는지도 궁금해요.

  • notion
  • 이력서
frontzero 댓글 1 좋아요 0 조회수 535

실행화면에서 오류가 나요

해결됨

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

이렇게 실행화면을 누르면 오류가 나고 또한 원래 플레이 버튼이 바뀌었어요 ㅠㅠ

  • android
  • kotlin
  • firebase
정소열 댓글 2 좋아요 0 조회수 608

화면 높이 관련 질문 있습니다.

미해결

초보자도 만들 수 있는 스크롤 인터렉션. 1편 자바스크립트

섹션1높이 - 화면 높이 = 2539px 이라고 하셨는데요! 섹션1높이는 알겠는데... 화면높이는 브라우저의 실질적으로 콘텐츠가 보이는 곳을 말씀하시는걸까요...? 그럼 실제 스크롤거리는 어디 부분을 말하는걸까요...? 즉, 화면 높이와 2539px의 정확한 설명이 필요합니다 ㅠ

  • HTML/CSS
  • javascript
  • jquery
  • 인터랙티브-웹
wkqxhd2020 댓글 1 좋아요 1 조회수 486

깃 요청 드립니다.

해결됨

Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념

인프런 아이디 : Marcus Aurelius 인프런 이메일 : marcusaurelius80@gmail.com 깃헙 아이디 : chunhee.han@outlook.com 깃헙 Username : MagnaPax

  • vue.js
Marcus Aurelius 댓글 1 좋아요 1 조회수 297

뭐를 잘못 클릭해나 봅니다.

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

제가 뭘 잘못 눌렀는지 저 파란색 드래그 부분이 하얀색 이 되면서 엔터키를 눌러도 } 중괄호들이 내려가지 않고 그대로 멈춰 있었습니다. 탭키를 눌러도 그자리에 그대로 고정된것 처럼 있더라고 창을 닫으니 해결되긴 했는데 왜 저렇게 됐는지 혹시 아시나요?

  • java
  • 객체지향
다비드 댓글 1 좋아요 0 조회수 307

BindingResult typemismatch, ExceptionResolver TypeMismatchException

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] BindingResult에서 처리된 typemismatch와 ExceptionResolver강의에서 처리하는 TypeMismatchException의 차이가 궁금해요.

  • spring
  • mvc
김예진 댓글 1 좋아요 0 조회수 539

인기 태그

인프런 TOP Writers

주간 인기글