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