Я создал простое весеннее приложение и пытаюсь добавить в него новое задание планировщика задач. Когда я его настраиваю, он выдает ошибки времени компиляции. Я много гуглил, но не знаю, почему это так ... Вот мой файл конфигурации. Любые идеи
<?xml version = "1.0" encoding = "UTF-8"?>
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xmlns:c = "http://www.springframework.org/schema/c"
xmlns:p = "http://www.springframework.org/schema/p"
xmlns:context = "http://www.springframework.org/schema/context"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.1.xsd">
<context:component-scan base-package = "com.ibm.spring" />
<bean id = "location" class = "com.ibm.spring.Location" autowire = "byName" scope = "singleton">
<property name = "addresses">
<list>
<ref bean = "address2"></ref>
</list>
</property>
</bean>
<bean id = "address1" class = "com.ibm.spring.Address">
<property name = "id" value = "1"></property>
<property name = "street" value = "shahjahan"></property>
</bean>
<bean id = "address2" class = "com.ibm.spring.Address">
<property name = "id" value = "2"></property>
<property name = "street" value = "Akbar"></property>
</bean>
<bean id = "restaurant" class = "com.ibm.spring.Restaurant" scope = "prototype">
</bean>
<task:scheduled-tasks scheduler = "printingScheduler">
<task:scheduled ref = "printer" method = "print" fixed-delay = "3000" />
</task:scheduled-tasks>
<task:scheduler id = "printingScheduler" />
</beans>
Ошибка времени компиляции отображается как
The prefix "task" for element "task:scheduled-tasks" is not
граница.
Это потому, что у вас нет пространства имен задач, объявленного в заголовке вашего файла контекста Spring. Я не уверен, какая сейчас версия, но вам нужно сделать что-то вроде этого:
Тег bean требует объявления пространства имен задачи и расположения схемы:
<bean... xmlns:task = "http://www.springframework.org/schema/task"
xsi:schemaLocation = "...
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd">
"
Почему бы вам не использовать конфигурацию на основе @annotation. просто нужно включить этот @EnableScheduling в файл конфигурации, и все готово к планированию задачи.
вы можете посетить: - https://www.baeldung.com/spring-scheduled-tasks