2017-03-16 4 views
1

없이는 JSP가 해결되지 않습니다. 개발 환경에서 IntelliJ Idea는 Maven이없는 Run Configuration을 만들고 'Spring Boot'유형의 정적 Main 메소드를 직접 호출합니다.Maven을 사용하거나 사용하지 않고 스프링 부트를 실행 하시겠습니까?

Maven없이 실행하면 JSP 템플릿 파일이 해석되지 않고 아래 오류 페이지가 나타납니다.

Maven과 함께 실행하면 해결되지만 디버깅 할 수는 없습니다. 디버거에 연결할 수 있도록 일부 POM.xml 구성이 표시되지만 실행 및 디버그가 아닌 앱을 실행해도 항상 디버깅됩니다.

Maven없이 Boot app를 실행해야합니까?
내가 그렇게해서는 안되는 경우, 디버그가 어떻게되어야할까요?
나는 내 index.jsp를 찾으려고 때문에이 오류 페이지를 참조 생각

Whitelabel Error Page 

This application has no explicit mapping for /error, so you are seeing this as a fallback. 

Thu Mar 16 08:53:54 GMT 2017 
There was an unexpected error (type=Not Found, status=404). 
No message available 

... 뭔가 잘못 여기 느낌, 그것을 찾을 수 없습니다 다음 'error.jsp에 노력하고 있습니다 그것도 찾는다.

+0

Maven으로 실행해서는 안됩니다. Maven은 빌드 도구 일 뿐이며 실행을 위해 의존해서는 안됩니다. –

+0

@ Adrian Shum, 왜 안 되니? IDEA classpath가 maven 클래스 패스와 다른 경우를 많이 보았습니다. 이 경우 Maven에 의한 실행 결과가 더 정확합니다. 물론, 별도의 명령을 사용하여 Maven에서 생성 한 바이너리 파일을 실행할 수는 있지만, Maven에서 실행하여 빌드 프로세스의 마지막 단계로 생각하면 틀린 점이 있습니까? –

+0

실제로 "응용 프로그램 실행"의 정의에 따라 다릅니다. 나는 일반적으로 모든 개발 등을 마쳤을 때 응용 프로그램을 배포 할 때 Maven에 의존해서는 안됩니다. 디버깅을 위해 IDE를 원격 프로세스에 연결할 수 있다면 디버깅을 할 수 있습니다. Maven을 사용할지 여부를 선택하는 것이 중요하지 않아야합니다 ... 아마도 귀하의 질문에 대해 아직 명확하지 않습니다. –

답변

0

더 많은 연구를 해본 결과 개발 환경에서 Maven이 아닌 Main 메소드를 통해 Spring Boot 응용 프로그램을 직접 실행하는 것이 옳은 것처럼 보입니다.

Maven이 없으면 JSP가 렌더링되지 않습니다. Tomcat Jasper 종속성의 범위는 <scope>provided</scope>이었습니다. "컴파일 된"또는 "런타임"으로 변경 한 후 Maven없이 작업을 시작했습니다. 흥미롭게도 "제공"되었을 때 JSP 렌더링은 Maven에서만 작동했습니다.

0

URL과 같은 다른 URL을 프로젝트 (이슈) 이름없이 사용하거나 시도 할 수 있습니다. IDEA와 maven이 당신의 전쟁을 전개하는 방식에 문제가있을 수 있습니다. 또한 maven에서 앱을 실행 한 다음 IDEA의 원격 실행 구성에 연결할 수 있습니다. 이를 위해서는 mvn 대신 mvnDebug를 사용해야합니다. mvn ($ MAVEN_HOME/bin /)과 같은 폴더에 있습니다. 그런 다음 포트 8000을 사용하여 IDEA에 원격 구성을 추가해야합니다. 이는 기본 포트입니다.

0

시도 다시 가져 메이븐 프로젝트 처음 인 IntelliJ에서 응용 프로그램을 실행, 또는 당신이 당신의 pom.xml 파일 (File | Settings | Build, Execution, Deployment | Build Tools | Maven | Importing | Import Maven projects automatically)에서 뭔가를 변경할 때 자동으로 일어날 수 있도록 전.

내 개발 환경에서 IntelliJ 실행을 사용합니다. 더구나 과 같은 기능 (예 :)을 갖고 싶다면 devtools IntelliJ 디버그 실행과 쉽게 통합되는 Spring Boot와 함께 제공되는 모듈을 사용하십시오 (종속성에 spring-boot-devtools 추가).

관련 문제