Spring Security包通过@Autowried PasswordEncoder导入不成功 解决办法

Spring Security包通过@Autowried PasswordEncoder导入不成功 解决办法
包引入没有问题,另外一个项目同样配置不报错。
@Autowired失败
Could not autowire. No beans of ‘PasswordEncoder’ type found.

编译也不通过:

***************************
APPLICATION FAILED TO START
***************************

Description:

Field passwordEncoder in com.test.demo.modules.service.impl.AbstractAccountService required a bean of type 'org.springframework.security.crypto.password.PasswordEncoder' that could not be found.

The injection point has the following annotations:
	- @org.springframework.beans.factory.annotation.Autowired(required=true)


Action:

Consider defining a bean of type 'org.springframework.security.crypto.password.PasswordEncoder' in your configuration.


Process finished with exit code 1

网上找了很多帖子,都是说降低安全等级。亲测无效。
最后自己找的解决办法:
既然提示找不到Bean那就自己注入一个试一下,果然解决了。
启动类中注入Bean PasswordEncoder

@SpringBootApplication
@EnableSwagger2
@EntityScan("com.test.demo.modules.po")
@EnableJpaRepositories("com.test.demo.modules.repository")
@EnableJpaAuditing
@ComponentScan("com.test.demo.modules")
public class DemoApplication {

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}


	@Bean
	public PasswordEncoder passwordEncoder(){
		return new BCryptPasswordEncoder();
	}

你可能感兴趣的:(学习笔记)