2009-11-10 16 views
9

Simple usecase: assemblare un prodotto Eclipse utilizzando semplici script, , basta scaricare i bundle nella directory dei plug-in. Questo funzionava con 3.3 - con 3.5 è rotto: la mia applicazione non si avvia in quanto il plug-in dell'app non viene trovato.Can Eclipse 3.5 può scoprire tutti i bundle nella directory dei plugin?

Domanda: qual è il modo più semplice per risolverlo? Questo sembra essere l'unico dolore nell'intero processo di aggiornamento per me.


Tentativi: Credo che questo è un no-no per P2: si mantiene il file bundles.info invece, che è probabilmente molto intelligente .. un po 'troppo intelligente per me.

Alcune idee che ho avuto:

  1. posso saltare P2 del tutto e tornare al buon vecchio, semplice meccanismo di scoperta -dirty-?
  2. posso installare i plugin dir come 'directory guardato'
    • sembra che ho bisogno di usare la p2.reconciler per questo .. Oh aspetta, è deprecato già :-(bug 251561 .. (grazie VonC per il puntatore)
  3. può questa vecchia impostazione nelle config.ini ancora lavorare? (che ora è sostituito con il 'simpleconfigurator') [email protected]:start, [email protected]:start, [email protected]
  4. devo chiamare il direttore (p2)? "si prega di scegliere il mio plugins up ":)
  5. Eviterei la cartella dropin per questo - questo è più per gli utenti finali .
  6. Eviterei di fare scherzi con il bundles.info se possibile.

Non mi interessa ancora tutte quelle funzioni intelligenti nel mio prodotto, in realtà gli utenti non utilizzano affatto il meccanismo di aggiornamento incorporato. Quindi mi piacerebbe BACIO (vale a dire: solo per avviare), e aggiungere più supporto avanzato quando necessario.

Ho chiesto questo su Eclipse forums, ma nessuna risposta ancora, quindi sarebbe davvero grato per qualche illuminazione. Inoltre, sentitevi liberi di correggermi sulle ipotesi: ho appena letto lo P2 docs, che a volte sembra confuso. Grazie!


Risposta: in realtà l'opzione 3 di cui sopra sembra funzionare dopo tutto - grazie Francis per confermare questo! (non funzionava in origine, ma probabilmente era causato da alcuni deps mancanti). Il mio unico problema ora è che alcuni pacchetti Eclipse richiedono effettivamente un configuratore semplic. Quindi mi chiedo se scambiarlo causerà problemi lungo la linea.

+0

Appena aggiunto alcune fonti di informazioni riguardanti la directory drop2 p2, n risposta al tuo commento. – VonC

risposta

5

È possibile modificare la configurazione del file/config.ini per non usare l'org.eclipse.equinox.simpleconfigurator (che fa la configurazione p2-based) e di utilizzare invece l'org.eclipse.update.configurator che è la modo vecchio stile di configurare semplicemente ciò che si trova nella directory dei plugin. Questo dovrebbe darti quello che vuoi.

+0

Sono appena giunto alla stessa conclusione - che sembra funzionare finalmente. I miei precedenti studi fallirono su questo: ho avuto spuri NCDFE e misteriosi incidenti - che mi portano a credere che non sia possibile "tornare alla vecchia maniera". Ora che ho ricominciato da zero (probabilmente cancellando il vero problema di root di alcuni altri bundle mancanti), le cose sembrano molto meglio :) Comunque, grazie per aver confermato questo! Stavo per aggiungere una risposta per questo. Tuttavia, alcuni pacchetti di Eclipse (per esempio JDT) richiedono esplicitamente il simpleconfigurator (che trovo un po 'strano). Pensi che il modo in cui la vecchia scuola va bene con quelli? – inger

+0

Non so cosa intendi con un bundle che richiede il simpleconfigurator. Per quanto ne so, è una funzione dell'ambiente (come specificato in config.ini), non qualcosa che può essere specificato da un pacchetto. Puoi approfondire cosa intendi qui? –

+0

Sicuro. C'è bundle org.eclipse.equinox.simpleconfigurator_1.0.200.v20090831.jar e un altro dipende da esso da Require-Bundle in MANIFEST.MF: org.eclipse.jdt.junit_3.6.0.v20091026-1200.jar. – inger

1

Forse this ti aiuterà (girato al buio)? L'ho trovato durante l'aggiornamento della mia installazione di Eclipse su Galileo e cercando di mantenere l'installazione del mio Flex Plugin.

+0

Grazie per questo, ma si tratta di un caso d'uso diverso: è utile per condividere le posizioni dei plug-in utilizzando i collegamenti. Non introdurrei tali riferimenti indiretti nel mio prodotto fuori dalla scatola. – inger

+0

Sì, non sono uno sviluppatore di Eclipse ma ho pensato di provarci. In bocca al lupo. –

5

Anche se non risponde pienamente ciò che siete dopo, è possibile specificare in un eclipse.ini (come quella che ho describe here):

-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=C:/jv/eclipse/mydropins 

che non specifica a p2 per monitorare qualsiasi directory di tua scelta per rilevare i plug-in in esso.


Un'altra fonte di idea potrebbe essere questo articolo: Composing and updating custom Eclipse distros

Non è difficile creare un prodotto a base di funzioni che include queste cose, e fare un product build per finire con qualcosa di simile:

alt text


Nota: il concetto di riconciliazione è dettagliato nello eclipse Wiki.

Per alcune installazioni di Eclipse, esisterà il concetto di un'installazione condivisa - questo può essere nel caso di un sistema Linux in cui è installato un set di base di software tramite pacchetti RPM (forse), o può essere in una distribuzione Maya in cui i profili condivisi sono definiti in un server centrale.
In entrambi i casi, è necessario eseguire la riconciliazione tra il profilo condiviso e l'istanza corrente dell'utente del profilo, comprese eventuali modifiche che possono aver apportato.

Parte di questo meccanismo è l'impostazione Dropins Reconciler. Sebbene, come illustra bug 251561, non è consigliabile inserire troppi plug-in.

+0

Cheers per quello. Quindi, in pratica, questo è il modo di implementare "directory guardate" (seconda alternativa nella mia Q). Ho visto questa opzione menzionata su vari blog, ma non è chiaro se fa la cosa giusta. Puoi aggiungere più dirs lì? Puoi aggiungere le dirs del plugin stesso? Questo documento è documentato? Nulla nel sistema di aiuto, né sul wiki p2 (che sembra avere centinaia di pagine, ma molto poco è aggiornato o concreto oltre il delirio su quanto sia bello il sistema .. in linea di principio :-) Lo proverò - grazie mille per i tuoi suggerimenti. – inger

+0

Inoltre, perché usare il -m vmarg, cosa non lo aggiunge in config.ini? Secondo la linea guida, eclipse.ini è per le impostazioni generali di vm - tutto il resto dovrebbe andare in configurazione/config.ini. Vedere la "linea di fondo" http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/misc/runtime-options.html – inger

+0

@inger: buon punto, ma ho sempre modificato un file di configurazione: eclipse.ini. Viene sempre distribuito con eclipse ed evito di dover modificare diversi file. – VonC

Problemi correlati