인프런 커뮤니티 질문&답변

흑후추님의 프로필 이미지
흑후추

작성한 질문수

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

톰캣 설정 - 인텔리J 무료 버전

IntelliJ무료버전 톰캣 실행이 안됩니다.

작성

·

3.2K

·

수정됨

1

Smart Tomcat을 사용해서 실행하는데

java.io.FileNotFoundException: C:\Users\...\smart-tomcat\conf\server.xml (지정된 파일을 찾을 수 없습니다) 발생합니다.

경로가 Catalina base에 자동으로 채워지는 부분이었어요..

어떻게해야될까요?

답변 2

2

안녕하세요. 흑후추님, 공식 서포터즈 OMG입니다.

 

최신 인텔리J에서도 사용할 수 있는 Smart Tomcat 플러그인 사용법을 12/13일에 추가해놓으셨습니다 😀

  1. 웹 서버와 서블릿 컨테이너 -> 톰캣 설정 - 인텔리J 무료 버전

추가 내용은 메뉴얼을 참고해주세요 ^^(12/13일 이전에 다운로드 받으신 메뉴얼이면 새로 받아주세요 😄

image

 

감사합니다.

흑후추님의 프로필 이미지
흑후추
질문자

안녕하세요.. 오늘 다운 받은 파일 참고해서 발생한 에러입니다..😅

인텔리제이 - 무료버전에서 smart tomcat으로 정상실행됨을 확인하였는데요,

image에러가 어느 부분에서 발생하는걸까요?

 

캡쳐화면을 남겨주시겠어요? 캡쳐화면으로도 원인 파악이 잘 되지 않는다면 소스코드를 요청드려 확인해봐야 할 것 같습니다.

 

흑후추님의 프로필 이미지
흑후추
질문자

Smart Tomcat 설정입니다.

image

발생한 에러입니다.

java.lang.RuntimeException: java.io.FileNotFoundException: C:\Users\.SmartTomcat\server\server\conf\server.xml (지정된 파일을 찾을 수 없습니다)
	at com.poratu.idea.plugins.tomcat.conf.TomcatCommandLineState.createJavaParameters(TomcatCommandLineState.java:164)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:909)
	at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:65)
	at com.intellij.execution.configurations.JavaCommandLineState.getJavaParameters(JavaCommandLineState.java:41)
	at com.intellij.execution.impl.DefaultJavaProgramRunner.patchJavaCommandLineParams(DefaultJavaProgramRunner.java:133)
	at com.intellij.execution.impl.DefaultJavaProgramRunner.lambda$doExecute$2(DefaultJavaProgramRunner.java:123)
	at com.intellij.execution.runners.JavaProgramPatcher.lambda$patchJavaCommandLineParamsUnderProgress$2(JavaProgramPatcher.java:41)
	at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:287)
	at com.intellij.openapi.progress.impl.CoreProgressManager.startTask(CoreProgressManager.java:434)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.startTask(ProgressManagerImpl.java:132)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressSynchronously$8(CoreProgressManager.java:518)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$new$0(ProgressRunner.java:84)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:248)
	at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:73)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:192)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:610)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:685)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:641)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:609)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:78)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:179)
	at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:73)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$5(ProgressRunner.java:248)
	at com.intellij.openapi.progress.impl.ProgressRunner$ProgressRunnable.run(ProgressRunner.java:498)
	at com.intellij.util.concurrency.ChildContext$runAsCoroutine$1.invoke(propagation.kt:81)
	at com.intellij.util.concurrency.ChildContext$runAsCoroutine$1.invoke(propagation.kt:81)
	at com.intellij.util.concurrency.ChildContext.runAsCoroutine(propagation.kt:86)
	at com.intellij.util.concurrency.ChildContext.runAsCoroutine(propagation.kt:81)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$launchTask$18(ProgressRunner.java:464)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
	at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.io.FileNotFoundException: C:\Users\.SmartTomcat\server\server\conf\server.xml (지정된 파일을 찾을 수 없습니다)
	at java.base/java.io.FileInputStream.open0(Native Method)
	at java.base/java.io.FileInputStream.open(FileInputStream.java:216)
	at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
	at java.base/java.io.FileInputStream.<init>(FileInputStream.java:111)
	at java.base/sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:86)
	at java.base/sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:189)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:653)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:150)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:861)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:247)
	at java.xml/com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:342)
	at java.xml/javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:206)
	at com.poratu.idea.plugins.tomcat.conf.TomcatCommandLineState.updateServerConf(TomcatCommandLineState.java:178)
	at com.poratu.idea.plugins.tomcat.conf.TomcatCommandLineState.createJavaParameters(TomcatCommandLineState.java:129)
	... 35 more

image사용자 > .SmartTomcat >> conf로 접근하여 server.xml이 존재하는지 확인해보시겠어요?

오류 메시지 상으로는 server.xml이 존재하지 않는다고 하는데, 에러메시지 기반으로 하나씩 확인해봐야 할 것 같습니다.

 

우선 보이지 않는다면 스마트 톰캣을 플러그인 삭제 후 재설치 하여 확인해주세요.

그리고 강의 메뉴얼에서 설명하는 아래 부분도 진행하였는지 확인 부탁드립니다.

image

흑후추님의 프로필 이미지
흑후추
질문자

gradle 설정 했고, server.xml파일이 없어서 재설치 해도 같은 오류가 발생합니다..

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 흑후추님 오류 메시지를 보니 경로가 좀 이상하게 나오더라구요.

아래 오류 메시지를 보면 server\server로 server가 두번 나옵니다.

C:\Users\.SmartTomcat\server\server\conf\server.xml

IntelliJ에서 기존 Tomcat server를 제거하고 Tomcat Server 위치를 다시 한번 잡아보시겠어요?

흑후추님의 프로필 이미지
흑후추
질문자

기본 서버 삭제하고 위치 새로 잡는건 어떻게 하면 되나요?

김영한님의 프로필 이미지
김영한
지식공유자

image여기서 Configure...을 선택해주세요.

 

image이 화면에서 - 버튼을 선택해서 톰켓을 제거해주세요. 그리고 + 를 눌러서 위치를 다시 잡아주세요.

감사합니다.

 

흑후추님의 프로필 이미지
흑후추
질문자

.SmartTomcat\server\conf\server.xml (지정된 파일을 찾을 수 없습니다) 이제 이렇게 나오네요.. server.xml 파일은 어떻게해야 생기는건가요...?

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 흑후추님

server.xml은 톰캣을 다운로드 받고 압축을 풀면 conf 폴더안에 기본으로 존재하는 파일입니다.

다운로드 받은 톰캣에 문제가 있을 수 있는데요. 다음 링크로 다시 다운로드 받아서 처음부터 다시 진행해보시겠어요?

https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.17/bin/apache-tomcat-10.1.17.zip

그래도 잘 안되면, 최대한 많은 정보를 스크린샷으로 출력해주세요.

톰캣 설치 폴더, IntelliJ에서 모든 설정 화면 등등

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다.

흑후추님, 질문하신 내용과 유사한 문제를 겪고 계신 다른 수강생의 질문과 그에 대한 답변이 도움이 될 것 같습니다. 아래 링크를 확인해보시면 좋을 것 같습니다.

흑후추님의 프로필 이미지
흑후추

작성한 질문수

질문하기