2013-03-07 15 views
18

Ho bisogno di un modo per configurare un ambiente di codifica Eclipse altamente personalizzato in modo completamente automatico da uno script in linux. L'ambiente eclissi personalizzato richiede l'installazione di circa 10 diversi plugin da varie fonti (protobuf, pydev, cmakeed, openinterminal, egit, yaml, webpageeditor, ecc.). Fare questo manualmente ogni volta con il gui richiede 20-30 minuti. Voglio automatizzare l'installazione di plugin in uno script in modo che chiunque esegua Linux possa ricreare il mio ambiente Eclipse con un set personalizzato di plugin senza interazione umana. Qualcuno ha consigli su come farlo?Come installare l'elenco dei plugin di eclipse da uno script?

+0

Possibile duplicato (http://stackoverflow.com/questions/7163970/how-do-you-automate-the-installation-of-eclipse-plugins-with-command-line) – 030

risposta

18

Ecco gli snippet della riga di comando per installare alcuni dei miei plugin preferiti (testati su Eclipse Indigo 3.7) ... Il trucco è capire il valore del parametro "installIU" per il pacchetto ... La GUI di Eclipse mostrerà questo se clicchi sul link "more" quando il pacchetto desiderato è selezionato nella finestra dell'installer.

cmakeed - CMake editor

eclipse -nosplash -application org.eclipse.equinox.p2.director -repository http://download.eclipse.org/releases/indigo/,http://cmakeed.sourceforge.net/eclipse/ -installIU com.cthing.cmakeed.feature.feature.group 

OpenInTerminal - Add option in context menu

eclipse -nosplash -application org.eclipse.equinox.p2.director -repository http://download.eclipse.org/releases/indigo/,http://eclipse-openinterminal.googlecode.com/svn/trunk/site/ -installIU OpenInTerminal.feature.group 

protobuf-dt - Google Protobuffer editor

eclipse -nosplash -application org.eclipse.equinox.p2.director -repository http://download.eclipse.org/releases/indigo/,http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/,http://protobuf-dt.googlecode.com/git/update-site -installIU com.google.eclipse.protobuf.feature.group 

yedit - YAML Editor

eclipse -nosplash -application org.eclipse.equinox.p2.director -repository http://download.eclipse.org/releases/indigo/,http://dadacoalition.org/yedit -installIU org.dadacoalition.yedit.feature.group 

shelled - Bash Script Editor

eclipse -nosplash -application org.eclipse.equinox.p2.director -repository http://download.eclipse.org/releases/indigo/,http://download.eclipse.org/technology/dltk/updates/,https://sourceforge.net/projects/shelled/files/shelled/update/ -installIU net.sourceforge.shelled.feature.group 

editor di pagine web

eclipse -nosplash -application org.eclipse.equinox.p2.director -repository http://download.eclipse.org/releases/indigo/ -installIU org.eclipse.jst.webpageeditor.feature.feature.group 

Pydev
Pydev è difficile perché richiede l'installazione di un certificato di abeti t ... Ecco uno script che automatizza questo passo:

#!/usr/bin/python 
# Add PyDev's certificate to Java's key and certificate database 
# Certificate file here: http://pydev.org/pydev_certificate.cer 
import os, sys, pexpect, urllib2 
def main(): 
    # NOTE: You may have to update the path to your system's cacerts file 
    certs_file = '/usr/lib/jvm/default-java/jre/lib/security/cacerts' 
    pydev_certs_url = 'http://pydev.org/pydev_certificate.cer' 
    print "Adding pydev_certificate.cer to %s" % (certs_file) 
    pydev_cert = open('pydev_certificate.cer', 'w') 
    pydev_cert.write(urllib2.urlopen(pydev_certs_url).read()) 
    pydev_cert.close() 
    cmd = "keytool -import -file ./pydev_certificate.cer -keystore %s" % (certs_file) 
    child = pexpect.spawn(cmd) 
    child.expect("Enter keystore password:") 
    child.sendline("changeit") 
    if child.expect(["Trust this certificate?", "already exists"]) == 0: 
    child.sendline("yes") 
    try: 
    child.interact() 
    except OSError: 
    pass 
    print "done" 

if __name__ == "__main__": 
    main() 

Quindi è possibile eseguire: [? Come automatizzare l'installazione di plugin Eclipse con la linea di comando]

eclipse -nosplash -application org.eclipse.equinox.p2.director -repository http://download.eclipse.org/releases/indigo/,http://pydev.org/updates/ -installIU org.python.pydev.feature.feature.group 
+0

Funziona anche in Windows, basta aggiungere '.exe' al percorso dell'eseguibile di eclissi. Per quanto riguarda lo script python, dovrebbe essere eseguito con python o modificato come '/ usr/bin/python' non funzionerà sulla maggior parte dei setup e il modulo pexpect attualmente non funziona su Windows. Entrambi questi problemi possono essere risolti con cygwin, io non lo uso, quindi non posso confermare. – bschlueter

Problemi correlati