Repository não é encontrado no Springboot

Boa noite galera.
Estou fazendo um projeto em SpringBoot e sou meio iniciante na tecnologia já dei uma boa pesquisada e as respostas que encontro para o meu problema parecem não funcionar. Enfim aqui vai minha estrutura do projeto:

Quando vou rodar o projeto recebo o erro:

Field lowcreditRepository in com.sippulse.email.lowcredit.Service.LowCreditServiceImpl required a bean >of type ‘com.sippulse.email.lowcredit.Repository.SipPulseEmailLowCreditRepository’ that could not be >found.

The injection point has the following annotations:

  • @org.springframework.beans.factory.annotation.Autowired(required=true)

Action:

Consider defining a bean of type >‘com.sippulse.email.lowcredit.Repository.SipPulseEmailLowCreditRepository’ in your configuration.

Já tentei colocar ComponentsScan com o pacote base do projeto mas não funcionou.

@Service
@EnableScheduling
public class LowCreditServiceImpl implements LowCreditService {
	@Autowired
	private SipPulseEmailLowCreditRepository lowcreditRepository;

         ...


@Repository
public interface SipPulseEmailLowCreditRepository extends JpaRepository<Subscriber, Long> {
         ...

Eu não tenho o bean configurado no xml uma vez que pelo que eu li é um modelo mais antigo e por anotações deveria funcionar.
Desde já agradeço, caso seja necessaria mais alguma informação por favor me informem.

Manda o código da classe principal do projeto (a que tem @SpringBootApplication).

@SpringBootApplication
public class LowCreditApplication {
	public static void main(String[] args) {
		SpringApplication.run(LowCreditApplication.class, args);
	}
	@Autowired
	SipPulseEmailServiceImpl spmsi;
	@Autowired
	LowCreditServiceImpl lcs;

	@Bean
	void applicationRunner() {
		lcs.checkLowCredit();
		
	}
}

Eu ainda estou no meio do projeto, caso tenha alguma sujestão de melhora esse é um otimo momento :smiley:

Ps: Acabei mudando bastante coisas quebrando a cabeça com esse problema.

Essa classe LowCreditApplication tem a anotação @SpringBootApplication ?

Tem sim não tinha saido por que o arroba estava na mesma linha das crases acredito.

Numa aplicação spring-boot, ao anotar uma classe como @Component, @Service ou @Repository, a injeção via @Autowired ou pelo construtor deve funcionar sem quaisquer configurações extras. Em função de teste, vc pq não gera um projeto novo utilizando o Spring Initializr e cria uma classe service e outra repository para ver se funciona.

Poisé hoje recriei o projeto utilizando o initializr para verificar se corrigia o erro. Parece que não escanei os pacotes por algum motivo apesar do application estar em uma pasta superior aos outros elementos do pacote e pelo que eu entendi das minhas pesquisas as pastar posteriores deveriam ser escaneadas.

Já que tenho sua atenção é correto a utilização do autowired em services certo?

Dê preferência de injetar via construtor. Deixa o código mais fácil de testar, se for o caso. Mas usar @Autowired não é errado tb não. Depende do cenário.

Vou criar um projeto teste no initializr e retorno.
Poisé debuggar no spring tá complicado pra mim hahaha.
Valeu pelos toques.

Outra coisa. Qdo tu for usar um @EnableQualquerCoisa, tente deixar eles numa classe anotada com @Configuration ou direto na classe principal. Fica melhor de ver o que está habilitado no seu projeto.