Java 类型数组中的方法asList(T…)不适用于参数(角色,角色)

Java 类型数组中的方法asList(T…)不适用于参数(角色,角色),java,spring,oauth-2.0,Java,Spring,Oauth 2.0,我正在尝试使用Postman测试OAuth 2.0授权,如果我实现正确的话 我寄这封信是邮递员寄来的,希望能收到回信 但我在这部分代码中有错误: @SpringBootApplication public class KamehouseApplication { public static void main(String[] args) { SpringApplication.run(KamehouseApplication.class, args); }

我正在尝试使用Postman测试OAuth 2.0授权,如果我实现正确的话

我寄这封信是邮递员寄来的,希望能收到回信

但我在这部分代码中有错误:

@SpringBootApplication
public class KamehouseApplication {

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

    }

    @Autowired
    public void configure(AuthenticationManagerBuilder auth, UserRepository repo, User user) throws Exception {
        if (repo.count() == 0)
            user = (new User("user", // username
                    "user", // password
                    Arrays.asList(new Role("USER"), new Role("ACTUATOR"))));// roles

        repo.save(user);

        auth.userDetailsService(s -> new CustomUserDetails(repo.findByUsername(s)));
    }
}
红色下划线的部分是

Arrays.asList(new Role("USER"), new Role("ACTUATOR"))));

The method asList(T...) in the type Arrays is not applicable for the arguments (Role, Role)
这是我的用户类

@Entity
@Table(name = "user")
public class User {

    @Id
    @GeneratedValue
    public int id;

    public String firstname;
    public String lastname;
    public String username;
    public String password;

    @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
    private List<Role> roles;

    public User() {
    }

    //Getters/Setters
@实体
@表(name=“user”)
公共类用户{
@身份证
@生成值
公共int id;
公共字符串名;
公共字符串lastname;
公共字符串用户名;
公共字符串密码;
@OneToMany(fetch=FetchType.EAGER,cascade=CascadeType.ALL)
私有列表角色;
公共用户(){
}
//能手/二传手

解决方案

我换了一个构造器

public Role() {

}

添加到my Role.java文件中,并且还添加了

public User(String username, String password, List roles) {
}

对于我的User.java,现在它工作得很好。

你确定你正在导入
java.util.Arrays
而不是其他
Arrays
类吗?
User
构造函数的签名是什么?java版本是什么?@lealceldero java version“1.8.0\u 131”可能不是问题,但我没有看到
用户的构造函数(字符串用户名、字符串密码、列表角色)
…仅
User()
。如果在另一行执行
List roles=Arrays.asList(新角色(“用户”)、新角色(“执行器”)
,您会得到同样的结果吗代替角色工作正常?此外,您没有带参数的用户构造函数。也不需要在
User=(new User(…);
处使用换行括号;还可以从方法签名中删除User User您永远不会使用传入的值。
public User(String username, String password, List roles) {
}