Como acesso o conteúdo das pastas dentro de um arquivo jar?

Eu preciso dar uma olhada nos nomes dos arquivos dentro de um pacote específico. Atualmente, estou fazendo o seguinte:

ClassLoader loader = Thread.currentThread().getContextClassLoader();
URL packageUrl = loader.getResource(getPackage().replace('.', '/'));
File packageDir = new File(packageUrl.getFile());

// Work with the files inside the directory

Na verdade, isso funciona muito bem no Eclipse, pois não empacota meu aplicativo por padrão. Quando o executo de um arquivo jar, recebo umaNullPointerException empackageUrl.

Então, como obtenho uma lista do conteúdo de um pacote que está dentro de um jar? Minha pesquisa sugeriu o uso degetResourceAsStream, mas não sei ao certo como explorar um diretório com umInputStream, se isso for possível.

questionAnswers(2)

yourAnswerToTheQuestion