Я пытаюсь написать простое приложение Spring Spring JPA для Spring Boot в Groovy. Я последовал за getting started guide и сделал некоторое базовое преобразование, чтобы заставить его работать с Groovy и Spring Boot CLI.Spring Data JPA репозитории не создаются автоматически с помощью CommandLineRunner
Я бегу код с весеннем загрузки CLI (v1.1.8):
spring run app.groovy
Это приводит к ошибке:
NoSuchBeanDefinitionException: No qualifying bean of type [hello.CustomerRepository] is defined
Кто-нибудь есть идея, почему Repository не создается автоматически? Я чувствую, что мне нужно пропустить что-то простое. Вот файл, содержащий app.groovy всех кода:
package hello
@Grab("spring-boot-starter-data-jpa")
@Grab("h2")
import java.util.List
import javax.persistence.*
import org.springframework.boot.SpringApplication
import org.springframework.boot.autoconfigure.EnableAutoConfiguration
import org.springframework.context.ConfigurableApplicationContext
import org.springframework.context.annotation.Configuration
import org.springframework.data.repository.CrudRepository
@Entity
class Customer {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
long id
String name
Customer() {}
Customer(String name) {
this.name = name
}
}
interface CustomerRepository extends CrudRepository<Customer, Long> {
List<Customer> findByName(String name)
}
@Configuration
@EnableAutoConfiguration
class Application implements CommandLineRunner {
@Autowired
ConfigurableApplicationContext context
void run(String[] args) {
CustomerRepository repository = context.getBean(CustomerRepository.class)
repository.save(new Customer("Jack", "Bauer"))
}
}
вы пробовали добавлять '@ EnableJpaRepositories' – cfrick
Да, я попытался добавить @EnableJpaRepositories к классу приложений. Это не изменило результат. –