【发布时间】:2016-08-18 22:10:05
【问题描述】:
我的Spring-Boot 应用程序中有 2 个课程:
-任务
-亚军
runner 类包含我的 main 方法,我尝试从我的 Tasks 类中调用一个方法:
跑步者:
@Component
public class Runner {
Tasks tasks;
@Autowired
public void setTasks(Tasks tasks){
this.tasks=tasks;
}
public static void main(String[] args){
//error being caused by below line
tasks.createTaskList();
}
任务类:
@Service
public class Tasks {
public void createTaskList() {
//my code
}
//other methods
}
在我的 Runner 中,当我尝试在 Tasks 类中调用 createTaskList() 方法时,出现以下错误:
Non static field 'tasks' cannot be referenced from a static context
我该如何解决这个问题?
【问题讨论】:
-
@ElliotFrisch,该帖子并未完全回答 OP 的问题。由于它是一个spring boot应用程序,因此OP不能只创建一个静态实例,因为它涉及到注入的bean。
-
谢谢@HankD,你还有什么建议?
-
@ElliotFrisch,我建议他们参考 Krzysztof Wolny 对stackoverflow.com/questions/28199999/… 的回答。它向他们展示了如何创建一个
main()类似非静态run()方法来访问注入的bean。
标签: java class methods static main