Como incluir uma dependência em um arquivo jar de um aplicativo eclipse / osgi?

Eu criei um aplicativo Eclipse 4 e eu precisava de umjar oferecendo uma funcionalidade como parte da minha aplicação (pode ser qualquer coisa, por exemplolog4j para torná-lo trivial).
Eu adicionei ojar como parte do classpath do meu projeto (Right Click->Configure Build Path) mas em tempo de execução meu serviço falhou com umClassNotFound erro (de OSGI eu acho?).
Enfim, pesquisando isso, acabou, pelo menos como eu entendo, que eu deveria adicionar o jarro como parte de outroPlugin e criar uma dependência do meu aplicativo / serviço para este novo plugin.
Ou seja Eu criei umPlugin Project from Existing JAR archives.
Desta vez a configuração funcionou.
Então, se eu entendi isso, ao desenvolver para o Eclipse / OSGi não devemos adicionarjars nos classpaths diretamente, mas adicione-os via plugins (por quê?).
Questão: Se estou correto até agora, qual é a prática padrão para incluirjars ao desenvolver um projeto?
Definir / Criar umPlugin Project from existing JAR archives e adicionetodos as bibliotecas de terceiros necessárias,ou tem um projeto de plug-in diferente por necessidadejar ou algo mais talvez ???
Desculpe se minha terminologia não é precisa. Eu sou novo em programação OSGi e Eclipse

Nota: Quando se fala dejars Eu não estou me referindo a outros serviços OSGi. Estou me referindo à norma de usar bibliotecas de terceiros prontas e confiáveis ​​que seriam necessárias em muitas partes de um aplicativo. Por exemplo.log4j ou uma biblioteca de análise xml ouapache commons etc

questionAnswers(3)

yourAnswerToTheQuestion