2017-09-13 31 views
1

警告。根据Grails 3文档,sitemesh.xml被删除,所以文件自然不可用。我错过了什么吗?Grails的3 SchemaExport工具包含FileNotFoundException异常当<strong>的SchemaExport</strong>使用摇篮为一个Grails 3.3应用程序被执行时,以下警告在日志中,虽然创建<strong>ddl.sql</strong>,以查找sitemesh.xml

工具和版本:Grails的3.3.0,摇篮3.3,Hibnerate 5中,Sybase ASE 15.7

2017-09-13 12:50:45.264 WARN --- [   main] o.s.mock.web.MockServletContext   : Couldn't determine real path of resource class path resource [src/main/webapp/WEB-INF/sitemesh.xml] 

java.io.FileNotFoundException: class path resource [src/main/webapp/WEB-INF/sitemesh.xml] cannot be resolved to URL because it does not exist 
     at org.springframework.core.io.ClassPathResource.getURL(ClassPathResource.java:187) 
     at org.springframework.core.io.AbstractFileResolvingResource.getFile(AbstractFileResolvingResource.java:49) 
     at org.springframework.mock.web.MockServletContext.getRealPath(MockServletContext.java:458) 
     at org.grails.web.sitemesh.Grails5535Factory.<init>(Grails5535Factory.java:78) 
     at org.grails.web.servlet.view.SitemeshLayoutViewResolver.loadSitemeshConfig(SitemeshLayoutViewResolver.java:105) 
     at org.grails.web.servlet.view.SitemeshLayoutViewResolver.init(SitemeshLayoutViewResolver.java:67) 
     at org.grails.web.servlet.view.SitemeshLayoutViewResolver.onApplicationEvent(SitemeshLayoutViewResolver.java:146) 
     at org.grails.web.servlet.view.SitemeshLayoutViewResolver.onApplicationEvent(SitemeshLayoutViewResolver.java:42) 
     at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:167) 
     at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) 
     at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:393) 
     at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:347) 
     at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:883) 
     at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546) 
     at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) 
     at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) 
     at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) 
     at grails.boot.GrailsApp.run(GrailsApp.groovy:83) 
     at grails.ui.command.GrailsApplicationContextCommandRunner.run(GrailsApplicationContextCommandRunner.groovy:55) 
     at grails.ui.command.GrailsApplicationContextCommandRunner.main(GrailsApplicationContextCommandRunner.groovy:102) 

回答

1

这仅仅是一个WARN消息。潜在的春季班正在寻找它,只是说它不在那里。日志级别的默认值不显示此输出。

您可以安全地忽略该消息或调整记录器以不显示它。

https://github.com/spring-projects/spring-framework/blob/master/spring-test/src/main/java/org/springframework/mock/web/MockServletContext.java#L460

+0

由于命令反正生成ddl.sql文件我有点忽略它。但似乎有点奇怪,因为该文件不应该从Grails 3中获得。不应该在默认情况下删除该检查吗? – Mamun

+0

Grails基于spring-framework(和其他框架)构建。我不确定为什么Spring会删除某些功能的警告消息,因为其他Spring框架用户可能会使用该功能。 – erichelgeson

+0

Spring很可能正在寻找基于配置的特定资源。我不确定为什么Grails不能配置Spring来寻找Sitemesh。 – Mamun

相关问题