Cerco di eseguire il plug-in OSGi in Eclipse. È un pacchetto vuoto, ma eclipse mi invia sempre errori Ci sono i messaggi della mia console http://pastebin.com/dqQfpQhd Cosa c'è che non va?Avvio del bundle OSGi
risposta
Il problema è che la destinazione predefinita include molti pacchetti che non hanno nulla a che fare con il pacchetto - digitando il comando ss
quando tutti i messaggi di errore sono terminati li elencherà.
Ecco cosa dovete fare:
- In Eclipse, andare in Preferenze> Plug-in di sviluppo> Piattaforma di destinazione
- creare una nuova definizione di destinazione vuota
- Nella scheda Località, aggiungere una directory contenente nient'altro che il pacchetto Equinox (che puoi copiare dalla directory dei plug-in della tua installazione Eclipse, il jar è chiamato qualcosa come org.eclipse.osgi_3.7.0.v20110613.jar)
- Assicurati che il nuovo target sia attivo e prova a correre il tuo pacco di nuovo
Prima verifica le dipendenze del plug-in vuoto. Potrebbe essere che manchi di aggiungere un plugin, che non è caricato in fase di runtime.
Se si dispone di dipendenze nel proprio plug-in, controllare quale versione dei plugin viene utilizzata.
Quale versione Java è stata definita nel plug-in? È superiore alla versione che stai utilizzando in fase di runtime?
Il plug-in è in fase di caricamento delle DLL? in tal caso, controllare se la DLL può essere trovata in fase di runtime.
Edit:
# Workbench non è stato ancora creato. # a org.eclipse.ui.PlatformUI.getWorkbench (PlatformUI.java:92) # a org.eclipse.mylyn.internal.monitor.ui.MonitorUiPlugin.start (MonitorUiPlugin.java:145)
Cosa hai definito nel metodo di avvio di Activator? E 'sem, che stai usando il workbench che non è ancora stato creato.
Questo è il problema principale:
java.lang.IllegalStateException: Workbench non è stato ancora creato.
Si stanno utilizzando metodi/oggetti dal workbench o relativi al workbench mentre il workbench stesso non è stato ancora creato. Forse è possibile ritardare l'attivazione del pacchetto o rimuovere le dipendenze del workbench dalla parte di attivazione/inizializzazione del pacchetto.
Yikes, torna all'inizio. L'ultima riga del log contiene un "Hello World": è questo l'output atteso dal tuo bundle? Forse non è il tuo bundle che causa errori e avvertenze sull'output. Vedo anche alcuni "mylin" e altre cose. Se possibile, aggiungi un'altra installazione pulita di eclipse (senza bundle/plug-in aggiuntivi) al tuo sistema e prova il bundle in quell'ambiente.
Da un good article on eclipsezone:
Questo avviene di solito quando qualcuno tenta di eseguire un'applicazione Java contro un fascio di OSGi con java -classpath ..... Significa davvero che il plug-in del workbench non è ancora stato avviato e quindi le chiamate a getWorkbench() falliscono. Questa è essenzialmente una condizione di competizione, e può essere risolta esprimendo una dipendenza esplicita su quel bundle o rimbalzando quel bundle a un higher start level rispetto al workbench. Generalmente non visto, ma se lo è, è quello che sta succedendo.
Qual è la superclasse del proprio pacchetto? Perché ciò potrebbe introdurre una dipendenza dal banco di lavoro.
E - come si fa a "avviare" il pacchetto, dall'interno di eclipse o hav è stato inserito e inserito nella cartella del plugin di eclissi? Anche questo potrebbe fare la differenza.
Sai, come risolverlo? –
Sì, "Hello World viene emesso da myndle. Ho scaricato il nuovo Eclipse - sono gli stessi errori :( –
Provate a fare questo prima di eseguire il proprio bundle:
if(!PlatformUI.isWorkbenchRunning()) {
PlatformUI.createAndRunWorkbench(PlatformUI.createDisplay(), new WorkbenchAdvisor() {...});
}
Nessuno di questi errori ha nulla a che fare con il vostro pacco. Come puoi vedere dall'output di "Hello World", il tuo bundle sta iniziando bene.
Credo che stai lanciando Eclipse nel modo sbagliato, probabilmente attivando impazientemente tutti i pacchetti. Eclipse deve iniziare con la maggior parte dei pacchetti workbench in modalità "lazy activation".
- Specificare come avviare Eclipse. Hai aggiunto
-console
al fileeclipse.ini
? - Questo problema si verifica quando NON si tenta di utilizzare il proprio pacchetto?
- Come si installa e si attiva il proprio pacchetto?
- Si prega di incollare i seguenti file:
- Il
MANIFEST.MF
dal proprio fascio config.ini
daECLIPSE_HOME/configuration
eclipse.ini
daECLIPSE_HOME
- Il
Ho faticato molto per "Il workbench non è ancora stato creato" il giorno completo.
Ma ho avuto la soluzione dai seguenti punti .-
- Vai alla configurazione Run -> Rimuovi tutti i barattoli piattaforma di destinazione.
- Fare clic su Aggiungi pacchetti richiesti.
- Controllare org.apache.felix.gogo.runtime, org.apache.felix.gogo.shell, org.eclipse.eqinox.console, org.eclipse.osgi e il file jar.
- L'ultimo e importante passaggio. Passare a Setting->controllare la casella di controllo di "Cancellare l'area di configurazione prima di avviare".
- Eseguire l'applicazione OSGi ora.
- Divertiti se funziona per te come ha funzionato per me.
Grazie
dove è "aggiungi pacchetti richiesti"? – Anthony
- 1. Aggiornamento bundle OSGi all'avvio
- 2. granularità moduli/bundle OSGi
- 3. Struttura pacchetto bundle OSGi
- 4. Stampa percorso classe bundle OSGI?
- 5. OSGI Bundle vs vaso dipendenza
- 6. Includere risorse aggiuntive con i bundle OSGi
- 7. La migliore tecnica per ottenere il contesto del bundle OSGi?
- 8. Errore CQ5 OSGi Bundle - org.json.simple - Impossibile risolvere
- 9. Problema con l'aggiornamento dei bundle osgi
- 10. Utilizzo di JavaFX 2.2 nel bundle OSGi
- 11. In che modo il framework OSGi imposta l'ID bundle?
- 12. accesso agli argomenti della riga di comando dal bundle OSGi
- 13. Accedere alle risorse in un altro bundle di osgi?
- 14. Trova il bundle OSGI che esporta un pacchetto?
- 15. Come posso condividere librerie non OSGi tra bundle in un contenitore OSGi?
- 16. Installazione delle dipendenze OSGi con il plug-in maven-bundle
- 17. Come utilizzare la libreria di estensione JSF come bundle OSGI
- 18. Come importare lo stesso pacchetto da diversi bundle di osgi?
- 19. NoClassDefFoundError quando si esegue un bundle OSGI come jar classico
- 20. OSGi + Hibernate
- 21. Stato del servizio Amministrazione distribuzione OSGi
- 22. Impossibile avviare il bundle di osgi perché l'importazione non può essere risolta
- 23. Managing OSGi Dipendenza inferno
- 24. È possibile utilizzare Spring Boot con OSGi? In caso contrario, qualsiasi piano per avere un avvio a molla OSGi?
- 25. Avvia programmaticamente OSGi (Equinox)?
- 26. Utilizzo dell'implementazione del parser XML come servizio OSGi
- 27. OSGi: come garantire la coerenza del classpath?
- 28. Come rendere eclissi i bundle OSGI all'interno di un repository Maven (locale e remoto)
- 29. Il modo migliore per convertire i progetti java esistenti in bundle di osgi
- 30. Utilizzo libreria non osgi in un'applicazione osgi
è assolutamente vuoto plug-in –
Questo è il mio attivatore http://pastebin.com/6S8a8hnr –