我试图得到一个非常基本的Spring Boot应用程序部署和运行在Netbeans 8.0与Tomcat 8.0.3。我使用的是Java 1.8 os os X 10.9.2。我可以在捆绑模式下作为jar运行这个应用程序,但是不能作为war部署到Tomcat。
下面是pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.demo</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>demo</name>
<description>Demo project</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.1.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<start-class>demo.Application</start-class>
<java.version>1.8</java.version>
<tomcat.version>8.0.3</tomcat.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
我使用了站点start.spring。我稍微修改了pom,按照http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#howto-use-tomcat-8指定Tomcat版本。
我还按照http://spring.io/guides/gs/serving-web-content/添加了一个控制器和模板。根据另一个问题的建议,我在应用程序中添加了tomcat.version=8.0.3。
以下是我运行Netbeans时得到的堆栈跟踪。在项目属性中,服务器设置为Tomcat 8.0.3.0, Java EE版本设置为Java EE7 Web。
13-Aug-2014 11:39:27.598 INFO [http-nio-8084-exec-14] org.apache.catalina.startup.HostConfig.deployDescriptor Deploying configuration descriptor /Users/test/Library/Application Support/NetBeans/8.0/apache-tomcat-8.0.3.0_base/conf/Catalina/localhost/ROOT.xml
13-Aug-2014 11:39:27.601 WARNING [http-nio-8084-exec-14] org.apache.catalina.startup.SetContextPropertiesRule.begin [SetContextPropertiesRule]{Context} Setting property 'antiJARLocking' to 'true' did not find a matching property.
. ____ _ __ _ _
/\ / ___'_ __ _ _(_)_ __ __ _
( ( )___ | '_ | '_| | '_ / _` |
\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |___, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.1.5.RELEASE)
2014-08-13 11:39:29.853 INFO 10479 --- [io-8084-exec-14] o.s.boot.SpringApplication : Starting application on calvin with PID 10479 (/Users/test/Downloads/starter (3) 2/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-boot-1.1.5.RELEASE.jar started by test in /Applications/NetBeans/apache-tomcat-8.0.3/bin)
2014-08-13 11:39:29.902 INFO 10479 --- [io-8084-exec-14] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@1d5b1ff6: startup date [Wed Aug 13 11:39:29 IST 2014]; root of context hierarchy
2014-08-13 11:39:30.142 INFO 10479 --- [io-8084-exec-14] .b.l.ClasspathLoggingApplicationListener : Application failed to start with classpath: [file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/classes/, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/aopalliance-1.0.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/classmate-1.0.0.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/hibernate-validator-5.0.3.Final.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/jackson-annotations-2.3.3.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/jackson-core-2.3.3.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/jackson-databind-2.3.3.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/javassist-3.18.1-GA.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/jboss-logging-3.1.1.GA.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/jcl-over-slf4j-1.7.7.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/jul-to-slf4j-1.7.7.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/log4j-over-slf4j-1.7.7.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/logback-classic-1.1.2.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/logback-core-1.1.2.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/ognl-3.0.6.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/slf4j-api-1.7.7.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/snakeyaml-1.13.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-aop-4.0.6.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-beans-4.0.6.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-boot-1.1.5.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-boot-autoconfigure-1.1.5.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-boot-starter-1.1.5.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-boot-starter-logging-1.1.5.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-boot-starter-thymeleaf-1.1.5.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-boot-starter-web-1.1.5.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-context-4.0.6.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-core-4.0.6.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-expression-4.0.6.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-web-4.0.6.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/spring-webmvc-4.0.6.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/thymeleaf-2.1.3.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/thymeleaf-layout-dialect-1.2.5.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/thymeleaf-spring4-2.1.3.RELEASE.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/unbescape-1.0.jar, file:/Users/test/Downloads/starter%20(3)%202/target/demo-0.0.1-SNAPSHOT/WEB-INF/lib/validation-api-1.1.0.Final.jar]
2014-08-13 11:39:30.152 ERROR 10479 --- [io-8084-exec-14] o.s.boot.SpringApplication : Application startup failed
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to load bean class: ; nested exception is java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration
at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:395)
at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:165)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:305)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243)
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:254)
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:94)
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:609)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:120)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:691)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:320)
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:142)
at org.springframework.boot.context.web.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:89)
at org.springframework.boot.context.web.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:51)
at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:175)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5147)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:702)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:697)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:579)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:455)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1554)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1428)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:885)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:343)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:618)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:301)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
13-Aug-2014 11:39:30.153 SEVERE [http-nio-8084-exec-14] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:702)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:615)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:697)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:579)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:74)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:455)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1554)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:516)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1015)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:652)
at java.lang.reflect.Method.invoke(Method.java:483)
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1575)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1533)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1428)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:885)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:343)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:618)
at org.springframework.boot.autoconfigure.condition.SpringBootCondition.matches(SpringBootCondition.java:58)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
at org.springframework.context.annotation.ConditionEvaluator.shouldSkip(ConditionEvaluator.java:92)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:301)
at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:190)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.context.annotation.ConfigurationClassParser.processImports(ConfigurationClassParser.java:438)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:392)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
... 61 common frames omitted
Caused by: java.lang.IllegalArgumentException: URL must not be null
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.util.Assert.notNull(Assert.java:112)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.springframework.core.io.UrlResource.<init>(UrlResource.java:77)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.convertClassLoaderURL(PathMatchingResourcePatternResolver.java:325)
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.findAllClassPathResources(PathMatchingResourcePatternResolver.java:311)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.getResources(PathMatchingResourcePatternResolver.java:275)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.findPathMatchingResources(PathMatchingResourcePatternResolver.java:342)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.getResources(PathMatchingResourcePatternResolver.java:271)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:615)
at org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration$ResourceBundleCondition.getResources(MessageSourceAutoConfiguration.java:121)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
at org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration$ResourceBundleCondition.getMatchOutcome(MessageSourceAutoConfiguration.java:108)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:74)
at org.springframework.boot.autoconfigure.condition.SpringBootCondition.matches(SpringBootCondition.java:45)
... 65 common frames omitted
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:516)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1015)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:652)
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1575)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1533)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to load bean class: ; nested exception is java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration
at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:395)
at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:165)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:305)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243)
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:254)
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:94)
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:609)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:120)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:691)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:320)
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:142)
at org.springframework.boot.context.web.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:89)
at org.springframework.boot.context.web.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:51)
at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:175)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5147)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 45 more
Caused by: java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration
at org.springframework.boot.autoconfigure.condition.SpringBootCondition.matches(SpringBootCondition.java:58)
at org.springframework.context.annotation.ConditionEvaluator.shouldSkip(ConditionEvaluator.java:92)
at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:190)
at org.springframework.context.annotation.ConfigurationClassParser.processImports(ConfigurationClassParser.java:438)
at org.springframework.context.annotation.ConfigurationClassParser.processDeferredImportSelectors(ConfigurationClassParser.java:392)
... 61 more
Caused by: java.lang.IllegalArgumentException: URL must not be null
at org.springframework.util.Assert.notNull(Assert.java:112)
at org.springframework.core.io.UrlResource.<init>(UrlResource.java:77)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.convertClassLoaderURL(PathMatchingResourcePatternResolver.java:325)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.findAllClassPathResources(PathMatchingResourcePatternResolver.java:311)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.getResources(PathMatchingResourcePatternResolver.java:275)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.findPathMatchingResources(PathMatchingResourcePatternResolver.java:342)
at org.springframework.core.io.support.PathMatchingResourcePatternResolver.getResources(PathMatchingResourcePatternResolver.java:271)
at org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration$ResourceBundleCondition.getResources(MessageSourceAutoConfiguration.java:121)
at org.springframework.boot.autoconfigure.MessageSourceAutoConfiguration$ResourceBundleCondition.getMatchOutcome(MessageSourceAutoConfiguration.java:108)
at org.springframework.boot.autoconfigure.condition.SpringBootCondition.matches(SpringBootCondition.java:45)
... 65 more
13-Aug-2014 11:39:30.155 SEVERE [http-nio-8084-exec-14] org.apache.catalina.startup.HostConfig.deployDescriptor Error deploying configuration descriptor /Users/test/Library/Application Support/NetBeans/8.0/apache-tomcat-8.0.3.0_base/conf/Catalina/localhost/ROOT.xml
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:729)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:702)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:697)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:579)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:455)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1554)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1428)
at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:885)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:343)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:618)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:301)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:615)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:74)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:516)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1015)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:652)
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1575)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1533)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
回答我自己的问题。我将Tomcat从8.0.3升级到8.0.9,应用程序部署并运行时没有任何问题。