È possibile creare un meccanismo di provisioning eclipse p2 in esecuzione * localmente *?

StackOverflow https://stackoverflow.com/questions/131704

  •  02-07-2019
  •  | 
  •  

Domanda

Eclipse 3.4 [.x] - noto anche come Ganymede - viene fornito con questo nuovo meccanismo del provisioning chiamato p2 .

" Fornitura " è il processo che consente di scoprire e aggiornare su richiesta alcune parti di un'applicazione, come spiegato in generale in questo articolo su sito Web Sun .

Eclipse ha una sezione wiki estesa in cui vengono presentati i dettagli p2. Nello specifico, in questa pagina wiki si dice che p2 cercherà nuovi componenti Tuttavia, dopo averlo letto.

Suppongo (ma puoi confermare quel punto in base alla tua esperienza), che p2 può funzionare file " file: // " protocollo, che gli consentirebbe di eseguire il provisioning con il file locale (sul computer o su un percorso UNC '\ server \ path'), come illustrato qui , ma anche dai file:

  • [eclipse-SDK-3.4-win32] \ eclipse \ configurazione \ .settings \ org.eclipse.equinox.p2.artifact.repository.prefs
  • [eclipse-SDK-3.4-win32] \ eclipse \ configurazione \ .settings \ org.eclipse.equinox.p2.metadata.repository.prefs
Il meccanismo

p2 viene utilizzato per aggiornare l'eclipse stesso, attraverso un sito di aggiornamento eclipse 3.4 , e riferimento in quei file '.prefs' con una riga come:

  

repository / file: _C: _jv_eclipse_eclipse-SDK-3,4-win32_eclipse / url = file: / C: /jv/eclipse/eclipse-SDK-3.4-win32/eclipse /

Ora, come potrei replicare i componenti di eclissi presenti in quel sito di aggiornamento in una directory locale e fare riferimento a quei componenti attraverso i citati file '.prefs', per avere un processo di aggiornamento interamente eseguito localmente , senza dover accedere al web?
Suppongo che alcuni file di metadati p2 presenti nel lontano "sito di aggiornamento" debbano essere replicati e modificati.

Hai qualche pensiero / consiglio / suggerimento al riguardo? (ad es. su come scoprire, recuperare e aggiornare la struttura completa necessaria per un'installazione completa di eclissi, al fine di eseguire tale installazione localmente)

È stato utile?

Soluzione

Sì, è possibile specificare le posizioni del repository se si utilizza p2.director

questo ad esempio è uno snippet di uno script che uso per installare eclipse (Ganimede) da una copia locale del repository di Ganimede

./eclipse\
      -nosplash -consolelog -debug\
      -vm "${VM}"\
      -application org.eclipse.equinox.p2.director.app.application\
      -metadataRepository file:${SHARED_REPOSITORY_DIR}\
      -artifactRepository file:${SHARED_REPOSITORY_DIR}\
      -installIU "${4-org.eclipse.sdk.ide}"\
      -destination "${3}"\
      -profile "${1}"\
      -profileProperties org.eclipse.update.install.features=true\
      -bundlepool ${SHARED_BUNDLEPOOL_DIR}\
      -p2.os linux\
      -p2.ws gtk\
      -p2.arch "${2}"\
      \
      -vmargs\
        -Xms64m -Xmx1024m -XX:MaxPermSize=256m\
        -Declipse.p2.data.area=${SHARED_P2_DIR}

Ecco alcuni link per usare il p2 director

http://eclipse.dzone.com/articles/understanding-eclipse- p2-Provi
http://wiki.eclipse.org/Equinox_p2_director_application

Altri suggerimenti

Sembra che tu debba avere un aggiornamento funzionante via web che rispecchi (scarica) ciò di cui hai bisogno. Ma dopo ciò dovrebbe essere in grado di ottenere i file dal peer locale. Ma credo che questa sia la tua domanda: ha bisogno dell'accesso al web per determinare che ...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top