Eclipse Gradle Spring Boot MVC Build无法识别jsp

时间:2016-10-24 19:47:51

标签: eclipse spring-mvc gradle spring-boot

我是Spring Boot MVC的新手。我在网上找到了一个简单的Hello World MVC应用程序。我知道Spring Boot嵌入式运行MVC有几个问题。我相信我已经修改了我的应用程序来处理这些问题。我遇到的最后一个问题是使用jsp的Eclipse运行Eclipse“Run as Spring Boot App”功能。如果我使用Gradle从命令提示符构建我的应用程序并运行可执行war文件,一切正常,包括显示jsp网页元素。

 >Gradle Build
    ...
    ...
 > cd build\libs
 > java -jar MvcDemo3.war 

如果我在Eclispe中运行应用程序作为“Run as Spring Boot App”,浏览器会显示网页,但没有一个jsp元素是正确的。就好像服务器端代码没有识别jsp代码一样。

这是我的build.graddle代码,

 buildscript {
     ext {
         springBootVersion = '1.4.1.RELEASE'
     }
     repositories {
         mavenCentral()
     }
     dependencies {
         classpath("org.springframework.boot:spring-boot-gradle-
         plugin:${springBootVersion}")
     }
 }

 apply plugin: 'java'
 apply plugin: 'eclipse-wtp'
 apply plugin: 'spring-boot'
 apply plugin: 'war'


 war {
     baseName = 'MvcDemo3'
     version = 'v001'
 }
 sourceCompatibility = 1.8
 targetCompatibility = 1.8

 repositories {
     mavenCentral()
 }

 configurations {
     providedRuntime
 }

 dependencies {
     compile('org.springframework.boot:spring-boot-starter-web')
     compile('org.apache.tomcat.embed:tomcat-embed-jasper') 
 }

不确定为什么命令行Gradle .war build可以正常运行但是Eclipse不运行。我已经读过Eclipse没有jsp支持。我尝试在构建中添加jstl jar但没有运气。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

问题是使用jars不支持使用jsp' s的spring boot mvc。我所要做的就是修改gradle.build以构建.war而不是.jar。我执行了.war,它运作得很好。当然,在我发现这个问题之后,我阅读了spring boot mvc文档,并特别指出你需要创建一个可执行文件.war而不是.jar。对于任何新手,您可以使用命令行执行.war; java -jar MyMvcApplication.war。