简体   繁体   中英

How do you automate the installation of Eclipse plugins with command line?

I need to automate Installation of Eclipse Classic and add two "plugins" :

  • CDT (not sure this can be called a "plugin")
  • PyDev

Install Eclipse Classic (just downloaded) :

sudo tar -xvzf eclipse-SDK-3.7-linux-gtk.tar.gz -C /usr/local/

How to install then CDT and PyDev as system plugins (not user's)?

I could find these two docs which helped :

Install freshly downloaded Eclipse Classic :

sudo tar -xvzf eclipse-SDK-3.7-linux-gtk.tar.gz -C /usr/local/

To install desired CDT features (references found by using Eclipse's "Help>Install new software" tool)

  • C/C++ Development Tools ( org.eclipse.cdt.feature.group )
  • C/C++ Development Tools SDK ( org.eclipse.cdt.sdk.feature.group )
  • C/C++ Development Platform ( org.eclipse.cdt.platform.feature.group )
  • C/C++ Memory View Enhancements ( org.eclipse.cdt.debug.ui.memory.feature.group )
  • Eclipse Debugger for C/C++ ( org.eclipse.cdt.debug.edc.feature.group )
  • Miscellaneous C/C++ Utilities ( org.eclipse.cdt.util.feature.group )

run :

sudo /usr/local/eclipse/eclipse -nosplash \
  -application org.eclipse.equinox.p2.director \
  -repository http://download.eclipse.org/releases/indigo/,http://download.eclipse.org/tools/cdt/releases/helios/ \
  -destination /usr/local/eclipse \
  -installIU org.eclipse.cdt.feature.group \
  -installIU org.eclipse.cdt.sdk.feature.group \
  -installIU org.eclipse.cdt.platform.feature.group \
  -installIU org.eclipse.cdt.debug.ui.memory.feature.group \
  -installIU org.eclipse.cdt.debug.edc.feature.group \
  -installIU org.eclipse.cdt.util.feature.group

To install PyDev, we first need to insert their auto-signed certificate (which can be found here : http://pydev.org/pydev_certificate.cer )

#!/usr/bin/env python
# add PyDev's certificate to Java's key and certificate database
# Certificate file can be downloaded here : http://pydev.org/pydev_certificate.cer
import os, sys
import pexpect

print "Adding pydev_certificate.cer to /usr/lib/jvm/java-6-openjdk/jre/lib/security/cacerts"

cwd = os.path.abspath (os.path.dirname(sys.argv[0]))
child = pexpect.spawn("keytool -import -file ./pydev_certificate.cer -keystore /usr/lib/jvm/java-6-openjdk/jre/lib/security/cacerts")
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"

so run it :

sudo ./add_pydev_certificate.py

The desired PyDev features are :

  • PyDev for Eclipse ( org.python.pydev.feature.feature.group )

run :

sudo /usr/local/eclipse/eclipse -nosplash \
  -application org.eclipse.equinox.p2.director \
  -repository http://pydev.org/updates/ \
  -destination /usr/local/eclipse \
  -installIU org.python.pydev.feature.feature.group

This is a late answer but you might want to check out copying the feature and plugin directory of your repository to a folder called dropins located under the main eclipse folder. This works as of Helios and later. More information can be found at this link .

You may add CDT and PyDev manually, from GUI, into your current Eclipse installation. Then pack them altogether into one archive & unpack on target system(s).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM