Carregando classes e recursos em Java 9

eu estava lendoeste artigo na InfoQ citando Reinhold:

Os desenvolvedores ainda podem usar o caminho da classe Java no Java 9 para o Java runtime para procurar classes e arquivos de recursos. Só que, com os módulos do Java 9, os desenvolvedores não precisam mais do caminho da classe.

Então agora minha pergunta é: qual é a maneira correta do Java 9 de executar as tarefas listadas acima? Como você carrega dinamicamente, p. uma imagem (sem mexer nos caminhos relativos)?

Ainda mais interessante, como verificar se uma classe está disponível e tomar uma decisão dinamicamente (por exemplo, verificar se Jackson está disponível e, se houver, usá-lo para serialização JSON e se não usar outra coisa)?

O artigo também menciona o Spring Boot que já suporta Java 9 e o Spring Boot definitivamente faz muito carregamento dinâmico. Então, talvez alguém conheça a parte do código do Spring que eu posso ver?

questionAnswers(2)

yourAnswerToTheQuestion