vector4wang / spring-boot-quick

:herb: 基于springboot的快速学习示例,整合自己遇到的开源框架,如:rabbitmq(延迟队列)、Kafka、jpa、redies、oauth2、swagger、jsp、docker、k3s、k3d、k8s、mybatis加解密插件、异常处理、日志输出、多模块开发、多环境打包、缓存cache、爬虫、jwt、GraphQL、dubbo、zookeeper和Async等等:pushpin:
http://blog.wangxc.club
2.47k stars 908 forks source link

一个小问题 #1

Closed qzfzz closed 7 years ago

qzfzz commented 7 years ago

你好! 今天在使用您的代码,在启动时出现了如下问题(spark分支):2017-05-19 20:11:51,986 WARN AnnotationConfigEmbeddedWebApplicationContext:546 - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationConfig': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private java.lang.String com.spark.config.ApplicationConfig.appName; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'spark.app.name' in string value "${spark.app.name}" 2017-05-19 20:11:51,996 INFO StandardService:180 - Stopping service Tomcat 2017-05-19 20:11:52,020 ERROR SpringApplication:827 - Application startup failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'applicationConfig': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private java.lang.String com.spark.config.ApplicationConfig.appName; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'spark.app.name' in string value "${spark.app.name}" at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) 抱歉我对java系的东西不太熟悉 能帮我看下这是什么问题吗

vector4wang commented 7 years ago

抱歉,周末出去旅游了,今天才看到~ [Could not resolve placeholder 'spark.app.name' in string value "${spark.app.name}"]原因是spring容器加载类ApplicationConfig里的属性appName的时候,没有对应的值也就是@Value("${spark.app.name}")注解没值,你检查下resources/application.properties里是否有以下配置 server.port=8008

spark.app.name=springbootspark spark.home=D:\extrajars\spark-2.1.0-bin-hadoop2.6\spark-2.1.0-bin-hadoop2.6 spark.master.uri=local[3]