大写加黑,找了好久@Resource和@Autowired都依赖不到创建的bean的原因:@Bean的方法名即是创建的Bean名称
import org.activiti.engine.ProcessEngines;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.TaskService;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class ActivitiConfig {
@Bean
public RepositoryService repositoryService() {
System.out.println("初始化RepositoryService");
RepositoryService repositoryService = ProcessEngines.getDefaultProcessEngine().getRepositoryService();
System.out.println(repositoryService);
return repositoryService;
}
@Bean
public TaskService taskService() {
System.out.println("初始化TaskService");
TaskService taskService = ProcessEngines.getDefaultProcessEngine().getTaskService();
System.out.println(taskService);
return taskService;
}
}
测试类:
import org.activiti.engine.RepositoryService; import org.activiti.engine.TaskService; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import javax.annotation.Resource; @SpringBootTest @RunWith(SpringRunner.class) public class DemoApplicationTests { @Autowired private RepositoryService repositoryService; @Resource private TaskService taskService; @Test public void getProcessEngine() { System.out.println("获取RepositoryService:" + repositoryService); System.out.println("获取TaskService:" + taskService); } }
结果:

浙公网安备 33010602011771号