묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 부트 - 핵심 원리와 활용
빌드에 실패하는데요..
기존에 인텔리제이에서 자바 11버전으로 설정했었습니다.그래서 자바 버전 설정 관련된 부분을 모두 17 버전으로 변경했는데도 빌드에 실패하네요..그래서 build.gradle 파일에서 아래 부분 주석 처리하니깐 빌드에 성공했습니다.왜 그런지 이유를 알 수 있을까요? //sourceCompatibility = '17'
-
해결됨스프링 부트 - 핵심 원리와 활용
데이터소스 매핑방식에도 Environment 를 사용하는 걸까요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]스프링에서 datasource 빈을 생성할 때 application.yml 파일의 url, username .. 속성들을 매핑해 사용하는데, 이런 매핑역시 Environment 를 활용해서 내부적으로 매핑되는걸까요? 만약 그렇다면 우선순위가 높은 자바시스템속성으로 url 정보를 주면 yml 파일보다 자바시스템속성이 먼저 읽히게 되는게 맞을까요?
-
미해결스프링 부트 - 핵심 원리와 활용
일반로그라는 의미가 정확히 무엇인가요?
[질문 내용]강의 내용 13분쯤 "일반로그와 에러로그는 구분해서 파일로 남기자"라는 내용이 있는데요.에러로그를 구분해서 파일을 남기는건 알겠는데,일반로그라고 함은 어떤범주인가요? 서버에서 출력되는 모든 로그들을 말하는건가요? System.out.println포함하여 서버를 가동했을때 나오는 모든 출력문인지, 아니면 log.info처럼 개발자가 의도하여 찍은 로그중 에러/경고가 아닌 로그를 의미하는건지 궁금합니다.
-
해결됨스프링 부트 - 핵심 원리와 활용
프로메테우스에서 Tomcat Threads 메트릭 안보일 때
https://stackoverflow.com/questions/57572370/monitoring-springboot-2-0-tomcat-server-thread-utilization application.yml 아래처럼 설정해주시면 됩니다.server: tomcat: mbeanregistry: enabled: true
-
미해결스프링 부트 - 핵심 원리와 활용
서버 증설 기준이 되는 CPU, 메모리 사용량
서버 증설 기준이 되는 CPU, 메모리 사용량 등은 서버마다 회사마다 팀마다 정하기 나름인가요? 아니면 통용되는 %가 있나요?
-
미해결스프링 부트 - 핵심 원리와 활용
private 함수 흐름 모니터링
추천해주신 핀포인트로 어떤 함수가 호출되었는지 파악하던 중 private 함수 호출 흐름은 핀포인트에서 알기 어렵더라구요. 혹시, private 함수 호출 흐름을 파악하실 때, 어떤 방법을 사용하시나요? private 함수 내의 로그를 하나하나 작성해주시나요?
-
미해결스프링 부트 - 핵심 원리와 활용
LifecycleException
안녕하세요..섹션2 > 톰캣 설정 - 인텔리J 무료 버전 듣는중인데 tomcat runner를 설정한후 Run을 실행하면 에러가 납니다.강의내용을 따라하면 윈도우 사용자라서 '/'관련 에러가 나는데 '\' 로 바꾸니까 에러가 안납니다.그리고, 이런 에러가 나는데요. 다른 질문들을 찾아봐도 모르겠네요...SEVERE: 자식 컨테이너를 시작 중 실패했습니다.java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 구성요소 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/\]]을(를) 시작하지 못했습니다.사용환경 : 윈도우 / IntelliJ IDEA 2022.3.3 (Community Edition)
-
미해결스프링 부트 - 핵심 원리와 활용
Java 파일이 생성이 안됩니다..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]build.gradle 파일 오픈을 하면실행 로그 창에Unexpected lock protocol found in lock file. Expected 3, found 0.해당 오류문구가 뜨고이후, hello 패키지 밑에 hello.servlet 패키지 파일 안에 java 클래스 파일이 생성이 안되는데 어디서 잘못된 것인지 모르겠습니다..강의자료 소스파일을 다시 다운받아서 실행했는데도 오류는 계속 발생하는 상황입니다..추가로, 소스파일 내부에 강의 내용에서는 build 폴더가 따로 있는데, 제가 받은 강의자료 소스파일에는 build 파일이 없습니다.
-
미해결스프링 부트 - 핵심 원리와 활용
서블릿
@WebServlet가 잘 이해가 가지 않아서 질문드립니다. 1) @WebServlet 애노테이션은 web.xml과 연동? 된다고 생각하면 될까요? 2) @WebServlet을 사용한 클래스 내에 서블릿 초기화 처럼 디스패처 서블릿을 등록하여도 될까요? 3) @WebServlet은 web.xml 사용시 사용하는 애노테이션이고, 나머지 서블릿 초기화들은 web.xml 대신 사용하는 프로그래밍 초기화라고 생각하면 될까요?
-
미해결스프링 부트 - 핵심 원리와 활용
빈등록
@RestController 에노테이션 사용후 HelloConfig내 @ComponentScan을 사용하면 자동으로 빈이 등록되는걸로 알고있는데, 굳이 수동 빈 등록을 한 이유를 알 수 있을까요?명시적으로 보여주기 위함일까요?
-
해결됨스프링 부트 - 핵심 원리와 활용
test 실행시 DB 저장 에러
위에 SPRING 은 표기됐니다. 서버 실행에는 문제가 없는데 DB에 문제가 있네요 PreparedStatementCallback; SQL [insert into member(member_id, name) values(?,?)]; NULL not allowed for column "MEMBER_ID"; SQL statement: insert into member(member_id, name) values(?,?) [23502-214] org.springframework.dao.DataIntegrityViolationException: PreparedStatementCallback; SQL [insert into member(member_id, name) values(?,?)]; NULL not allowed for column "MEMBER_ID"; SQL statement: insert into member(member_id, name) values(?,?) [23502-214] at app//org.springframework.jdbc.support.SQLExceptionSubclassTranslator.doTranslate(SQLExceptionSubclassTranslator.java:95) at app//org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70) at app//org.springframework.jdbc.core.JdbcTemplate.translateException(JdbcTemplate.java:1538) at app//org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:667) at app//org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:960) at app//org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:1015) at app//org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:1025) at app//hello.member.MemberRepository.save(MemberRepository.java:23) at java.base@17.0.7/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base@17.0.7/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base@17.0.7/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base@17.0.7/java.lang.reflect.Method.invoke(Method.java:568) at app//org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343) at app//org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196) at app//org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at app//org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:752) at app//org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:137) at app//org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at app//org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:752) at app//org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:703) at app//hello.member.MemberRepository$$SpringCGLIB$$0.save(<generated>) at app//hello.member.MemberRepositoryTest.memberTest(MemberRepositoryTest.java:21) at java.base@17.0.7/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base@17.0.7/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base@17.0.7/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base@17.0.7/java.lang.reflect.Method.invoke(Method.java:568) at app//org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:727) at app//org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131) at app//org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156) at app//org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147) at app//org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86) at app//org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103) at app//org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45) at app//org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37) at app//org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92) at app//org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86) at app//org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:217) at app//org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at app//org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:213) at app//org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:138) at app//org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:68) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151) at app//org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) at app//org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) at app//org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) at java.base@17.0.7/java.util.ArrayList.forEach(ArrayList.java:1511) at app//org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) at app//org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) at app//org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) at app//org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) at java.base@17.0.7/java.util.ArrayList.forEach(ArrayList.java:1511) at app//org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) at app//org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) at app//org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) at app//org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) at app//org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) at app//org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35) at app//org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57) at app//org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86) at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86) at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:53) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:99) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:79) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:75) at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:61) at java.base@17.0.7/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base@17.0.7/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base@17.0.7/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base@17.0.7/java.lang.reflect.Method.invoke(Method.java:568) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24) at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33) at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94) at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source) at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193) at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129) at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100) at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60) at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56) at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:133) at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:71) at app//worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69) at app//worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74) Caused by: org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException: NULL not allowed for column "MEMBER_ID"; SQL statement: insert into member(member_id, name) values(?,?) [23502-214] at app//org.h2.message.DbException.getJdbcSQLException(DbException.java:508) at app//org.h2.message.DbException.getJdbcSQLException(DbException.java:477) at app//org.h2.message.DbException.get(DbException.java:223) at app//org.h2.message.DbException.get(DbException.java:199) at app//org.h2.table.Column.validateConvertUpdateSequence(Column.java:365) at app//org.h2.table.Table.convertInsertRow(Table.java:926) at app//org.h2.command.dml.Insert.insertRows(Insert.java:167) at app//org.h2.command.dml.Insert.update(Insert.java:135) at app//org.h2.command.dml.DataChangeStatement.update(DataChangeStatement.java:74) at app//org.h2.command.CommandContainer.update(CommandContainer.java:169) at app//org.h2.command.Command.executeUpdate(Command.java:252) at app//org.h2.jdbc.JdbcPreparedStatement.executeUpdateInternal(JdbcPreparedStatement.java:209) at app//org.h2.jdbc.JdbcPreparedStatement.executeUpdate(JdbcPreparedStatement.java:169) at app//com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61) at app//com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java) at app//org.springframework.jdbc.core.JdbcTemplate.lambda$update$2(JdbcTemplate.java:965) at app//org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:651) ... 103 more MemberRepositoryTest > memberTest() FAILED org.springframework.dao.DataIntegrityViolationException at MemberRepositoryTest.java:21 Caused by: org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException at MemberRepositoryTest.java:21 2023-07-21T02:27:25.304+09:00 INFO 12264 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2023-07-21T02:27:25.306+09:00 INFO 12264 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed. 1 test completed, 1 failed > Task :test FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':test'. > There were failing tests. See the report at: file:///C:/Users/seongmun/spring/start/autoconfig/build/reports/tests/test/index.html * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 5s 4 actionable tasks: 2 executed, 2 up-to-date 테스트 코드입니다. 에러를 찾으려고아래부터 주석처리했는데, save에서 에러가 뜨더라구요! save도 영상처럼 그대로 작성했는데,어디서 에러가 뜬걸까요?
-
미해결스프링 부트 - 핵심 원리와 활용
라이브러리 만들 때 클래스를 감추는 방법 질문
라이브러리를 생성하는데 궁금한 점이 있습니다.라이브러리 안에는 A 클래스, B 클래스가 존재하고 여기서 외부로는 B 클래스만을 밖으로 내보내고 싶다고 할때는 어떤식으로 해야할까요?즉 A 클래스는 라이브러리 내부에서만 사용하도록 하고 B 클래스를 통해 외부에서 사용가능토록 하는 것입니다. default 접근 제어자를 생각해보았으나 라이브러리에 패키지가 여러 개일 경우 개발할 때 불편함이 있다고 생각되었습니다.항상 좋은 강의 감사드립니다 :)
-
해결됨스프링 부트 - 핵심 원리와 활용
내장 톰캣2-서블릿 (톰켓 실행 에러)
자료 코드 복붙해도 에러가 그대로네요... > Task :EmbedTomcatServletMain.main() FAILED EmbedTomcatServletMain.main 7�� 14, 2023 1:53:21 ���� org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["http-nio-8080"] 7�� 14, 2023 1:53:21 ���� org.apache.catalina.core.StandardService startInternal INFO: Starting service [Tomcat] 7�� 14, 2023 1:53:21 ���� org.apache.catalina.core.StandardEngine startInternal INFO: Starting Servlet engine: [Apache Tomcat/10.1.5] 7�� 14, 2023 1:53:21 ���� 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@35cabb2a] 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.EmbedTomcatServletMain.main(EmbedTomcatServletMain.java:21) Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] 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:\Users\�Ӹ�\OneDrive\���� ȭ��\Spring\start\embed\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 7�� 14, 2023 1:53:21 ���� org.apache.catalina.core.ContainerBase startInternal SEVERE: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: A child container failed during start 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.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.EmbedTomcatServletMain.main(EmbedTomcatServletMain.java:21) Caused by: org.apache.catalina.LifecycleException: A child container failed during start at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:935) 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) ... 8 more Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] 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) ... 16 more Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] 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) Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] 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:\Users\�Ӹ�\OneDrive\���� ȭ��\Spring\start\embed\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) Caused by: java.lang.IllegalArgumentException: The main resource set specified [C:\Users\�Ӹ�\OneDrive\���� ȭ��\Spring\start\embed\tomcat.8080\webapps\] is not valid ... 25 more Exception in thread "main" org.apache.catalina.LifecycleException: A child container failed during start at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:935) 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.EmbedTomcatServletMain.main(EmbedTomcatServletMain.java:21) Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: A child container failed during start 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) ... 8 more Caused by: org.apache.catalina.LifecycleException: A child container failed during start at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:935) 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) Caused by: org.apache.catalina.LifecycleException: A child container failed during start at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:145) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:916) ... 8 more Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:923) ... 16 more Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] 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) Caused by: java.lang.IllegalArgumentException: The main resource set specified [C:\Users\�Ӹ�\OneDrive\���� ȭ��\Spring\start\embed\tomcat.8080\webapps\] is not valid 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:\Users\�Ӹ�\OneDrive\���� ȭ��\Spring\start\embed\tomcat.8080\webapps\] is not valid at org.apache.catalina.webresources.StandardRoot.createMainResourceSet(StandardRoot.java:777) Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: A child container failed during start at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:734) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) ... 25 more Caused by: org.apache.catalina.LifecycleException: A child container failed during start Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@35cabb2a] Caused by: java.lang.IllegalArgumentException: The main resource set specified [C:\Users\�Ӹ�\OneDrive\���� ȭ��\Spring\start\embed\tomcat.8080\webapps\] is not valid Execution failed for task ':EmbedTomcatServletMain.main()'. > Process 'command 'C:/Users/java/jdk-17.0.7/bin/java.exe'' finished with non-zero exit value 1 * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. 사진은 복붙한 코드입니다.마지막 줄 tomcat.start()만 없으면, 에러는 안뜹니다.LifecycleException 에러로 보이는데,,https://www.inflearn.com/questions/5283/%EC%8B%AC%EA%B0%81-a-child-container-failed-during-start유사한 에러가 이거 같은데, 봐도 기존 코드가 달라 해결법을 모르겠네요..윈도우 11 // 인텔리제이 23.01 // 외장 라이브러리 : spring-core-6.0.4
-
미해결스프링 부트 - 핵심 원리와 활용
잘 이해가 안갑니다...
MyContainerInitV1 : ServletContainerInitializer을 implement한 클래스로서 서블릿 컨테이너 초기화를 위해 작성됐다.HelloServlet : HttpServlet을 상속받은 Servlet이다.AppInit : 애플리케이션 초기화를 위한 인터페이스이다.AppInitV1Servlet : AppInit를 implement한 애플리케이션 초기화 클래스 ? onStartup()을 통해 서블릿 컨테이너를 초기화하고 서블릿도 등록한다. MyContainerInitV2: ServletContainerInitializer을 implement한 클래스로서 @HandlesTypes(AppInit.class) 해줌으로써 해당 AppInit의 onStartup()을 통해 서블릿 컨테이너의 ctx를 파라미터로 보내서 AppInit 객체를 생성한다?================================제가 이해한 개념이 맞나요? 뭔가 용어들이 비슷해서 명확하게 이해가 안되는 것 같습니다. ㅠㅠ질문1) 컨테이너 초기화와 애플리케이션 초기화는 다른 건가요? 각각 뭐가 다르고 왜 해주는건지 잘 모르겠습니다. ㅠㅠ 질문2) AppInit과 ServletContainerInitializer은 둘다 onStartup()를 가지고 있던데.. 서로 다른 역할을 하는 각각의 인터페이스죠..? 질문3) AppInitV1Servlet 은 서블릿 컨테이너 초기화하고 서블릿도 등록하고, MyContainerInitV2도 서블릿 컨테이너 초기화와 서블릿 등록을 하게되는데 둘의 차이는 뭔가요?...너무 헷갈려요 ㅠㅠㅠㅠㅠ
-
미해결실습으로 배우는 그라파나 - {{ x86-64, arm64 }}
AWS 그라파나에 유용한 메트릭을 소개해주실 수 있나요?
AWS 그라파나에서 사용해야할 일이 생겨서 강의를 구매했습니다.많은 도움이 되었습니다. 감사합니다. 그런데 AWS 에서 사용하는 매트릭은 이름이 다른게 많아서 바로 적용하기는 어렵더라구요. 혹시 짤막하게나마 AWS 에서 사용할 수 있는 매트릭을 소개해주실 수 없는지 궁금합니다.
-
미해결스프링 부트 - 핵심 원리와 활용
다음 강의 주제
안녕하세요 :)혹시 다음 강의를 준비중이시라면 다음 강의 주제를 알 수 있을까요?MSA 관련해서 강의 예정이 있으신지 궁금합니다!
-
미해결스프링 부트 - 핵심 원리와 활용
@Configuration 주석 이유
두가지 질문이 있는데요MySpringBootMain띄울때 HelloConfig 클래스에 @Configuration 이 있어도 잘 동작 하던데 주석 처리하는 이유가 뭔지 알 수 있을까요? 다른 질문인데요 @Configuration안에 @Component가 있어서 @Component 대신 @Configuration을 써도 되는것 같던데 빈여러개 등록할때 말고 하나의 클래스를 빈으로 등록할때 @Component 대신 @Configuration을 사용하지 않는 이유가 뭘까요...?찾아봐도 잘 안나와서 질문 드립니다.
-
해결됨스프링 부트 - 핵심 원리와 활용
4개의 서블릿 등록
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)아니오 [질문 내용]좋은 강의 감사드립니다! 동영상 5:35 초 쯤 3개의 서블릿이 등록되어있다고 말씀해주셨는데 정확히는 @WebServlet 애노테이션을 통한 TestServlet 등록이 있어서 4개의 서블릿이 등록되어있는 상태인 것 같습니다. ( 강의자료에도 TestServlet 이 포함되어 있는데 혹시 혼란이 생기시는 분들도 있을 수 있을 것 같아 질문으로 남기겠습니다!)
-
미해결스프링 부트 - 핵심 원리와 활용
윈도우 사용자분들 cmd에서 톰캣 오류 혹은 빌드 오류 날때..
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 아니오[질문 내용]질문은 아니고 혹시 저와 같은 상황이 있을 것 같은 분들을 위해 몇 글자 적어보자면윈도우 cmd에서 빌드할 때 gradlew build 나 톰캣 catalina run 이런 명령어가 Unrecognized option: ~~ 이런식으로 나온다면 그냥 윈도우 powershell을 사용하는 걸 추천드립니다..Unrecognized option: -djava.util.logging.config.fileorUnrecognized option: -xmx64m등등..이상하게 cmd에선 대문자 옵션이 소문자로 바뀌어서 인수로 인식을 못하더라구여ㅠ.. 결론 ! => powershell 쓰면 해결가능합니다!
-
미해결실습으로 배우는 그라파나 - {{ x86-64, arm64 }}
enabled-control-plane-scrape.sh을 통해 변경하는 부분을 aws eks cluster에도 적용할 수 있나요?
질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다. 다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다![질문 전 답변]1. 강의에서 다룬 내용과 관련된 질문인가요? [아니요]2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예]3. 질문 잘하기 법을 읽어보셨나요? [예](https://www.inflearn.com/blogs/1719)4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.[질문 하기]안녕하세요.enabled-control-plane-scrape.sh의 내용을 보면 kube control-plane에 있는 중요 모듈들(kube-proxy, kube-etcd, kube-controller-manager, kube-scheduler)에 대해 속성을 수정하는 것에 대해 설명되어 있는데요.혹시 이 부분을 aws eks cluster에도 적용할 수 있나요? aws eks cluster는 managed 서비스이므로 control-plane을 사용자가 직접 접근할 수 없는 것으로 알고 있는데 공개하신 grafana 템플릿 페이지에서는 aws eks에서도 동작하는 것을 확인했다고 언급되어 있어서 혹시나 싶어서 문의 드립니다. 감사합니다.