Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Duvidas sobre o 'Scope Runtime'

Boa tarde!

Minha duvida é quando usar o scope runtime? Ele significa que eu não estou usando nenhuma classe dessa dependência no código, portanto eu posso compilar, correto? Só que se não tem nenhuma classe sendo utilizada no código, porque eu precisaria dessa dependência?

Obrigado.

2 respostas
solução!

Olá Fernando tudo bem?

Esse tipo de escopo é comum quando temos um carregamento de classe dinamicamente.

Vamos supor (hipoteticamente) que você esteja utilizando jdbc manualmente. E você precise conectar-se à um banco mysql.

Em algum momento do seu código você vai precisar carregar o driver do mysql para poder se conectar à ele.

E poderia ter um código mais ou menos assim:

Class.forName("com.mysql.jdbc.Driver")
;

Se no seu classpath não tiver a classe com.mysql.jdbc.Driver seu projeto compila normalmente. Só que em tempo de execução vai ser lançada uma exception ClassNotFoundException.

E aí que entra dependências de Runtime. Elas servem justamente para esse cenário, onde temos que ter determinada classe somente em tempo de execução.

Espero ter ajudado e bons estudos.

Entendi... Ficou claro para mim agora! Obrigado.