Encontre dependências de classe java em tempo de execução
Qual é a maneira mais eficaz de obter uma lista de dependências para uma classe Java em tempo de execução?
Usandoisto (com base no ASM ByteCode Manipulator 3.3.1), posso fazer o seguinte:
final Collection<Class<?>> classes =
getClassesUsedBy(MyService.class.getName(), "com");
Isso retorna referências paraBasicService
eIService
mas sente faltaContainerValue
e essa é a questão. Eu brinquei com o código ASM, mas não consegui descobrir como pegar ContainerValue.
package com.foo.bar;
public class MyService extends BasicService implements IService {
public String invoke(){
return new ContainerValue("bar").toString();
}
Como uma nota lateral, se eu fizerContainerValue
o tipo de retorno eminvoke
, funciona.
Existe alguma alternativa para usar o ASM para obter uma lista de dependências para uma classe? Por que diabos isso é tão difícil?