Ho creato un'applicazione Eclipse 4 e avevo bisogno di un jar
che offrisse una funzionalità come parte della mia applicazione (questo potrebbe essere qualsiasi cosa ad esempio log4j
per renderlo banale).
Ho aggiunto il jar
come parte del classpath del mio progetto (Right Click->Configure Build Path
) ma durante il runtime il mio servizio non è riuscito con un errore ClassNotFound
(da OSGI, suppongo?).
Ad ogni modo cercando questo risulta, almeno come ho capito, che dovrei aggiungere il barattolo come parte di un altro Plugin
e creare una dipendenza dalla mia applicazione/servizio a questo nuovo plugin.
I.e. Ho creato un Plugin Project from Existing JAR archives
.
Questa volta l'installazione ha funzionato.
Quindi, se capisco questo, quando si sviluppa per Eclipse/OSGi non si dovrebbe aggiungere direttamente jars
nei classpath ma aggiungerli tramite plugin (perché?).
Domanda: Se sono corretto finora, qual è la pratica standard per includere jars
durante lo sviluppo di un progetto?
Definire/Creare un Plugin Project from existing JAR archives
e aggiungere tutti le librerie di terze parti richiesti necessari lì, o avere un diverso progetto di plug-in per necessità jar
o qualcos'altro forse ???
Ci scusiamo se la mia terminologia non è accurata. Sono nuovo nella programmazione OSGi ed EclipseCome includere una dipendenza in un file jar da un'applicazione eclipse/osgi?
Nota: Quando si parla di jars
Non mi riferisco ad altri servizi OSGi. Mi riferisco alla norma sull'uso di librerie di terze parti pronte e affidabili che sarebbero necessarie in molte parti di un'applicazione. Per esempio. log4j
o una libreria di analisi xml o apache commons
ecc.
Qual è il tuo obiettivo finale: Vuoi creare un risultato finale per il "vostro" del progetto, dicono un jar/zip che ha tutte le classi/vasetti/risorse necessari per eseguire il programma? – Kashyap
@thekashyap: Non sono sicuro di aver capito la tua domanda.Il prodotto esportato è predefinito dalla configurazione '.product', giusto? Quindi la mia preoccupazione è come deve essere configurato il progetto in modo che nella distribuzione so che tutti i vasi necessari sono disponibili . – Cratylus
Check out: http://www.vogella.com/articles/OSGi/article.html e http://www.coderanch.com/t/104274/vc/Order-Export-tab-Java-Build – Kashyap