user310291 user310291 - 17 days ago 9
Scala Question

How to install Scala plugin manually?

http://www.scala-ide.org/

gives
http://download.scala-ide.org/update-current-35

There are features and plugins directory. Which should I use or both ? Should I just unzip them all in eclipse features and/or plugins directory ?

By the way what diff between features and plugins ?

Answer

You should use both: the update-current-35 is a p2 site you can enter in your "Available Software List" when installing a new software in Eclipse.
Eclipse will detect both features and plugins within that address p2 site, and will install them all.

See this Scala installation video.

The difference between feature and plugin is explained here.

Don't forget to use the right Eclipse version for this installation: Eclipse Classic 3.5.2.


If you need to install it manually, you should copy the full content of the plugins and features directories from that p2 site in a shared dropins you reference in your eclipse.ini (see this eclipse.ini for eclipse3.5).
(you don't need to copy site.xml, contents.jar, artifact.jar)

-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=C:/path/to/myPlugins

You will create the following tree (similar to another manual installation described in this SO answer)

C:/path/to/myPlugins
  org.scala-ide.1.0.0.201008022319
     eclipse
       features
         ch.epfl.lamp.sdt_2.8.0.scala-ide-upgrade.jar
         org.eclipse.contribution.weaving_1.6.4.scala-ide-upgrade.jar
         org.scala-ide.sdt.feature_1.0.0.201008022319.jar
         org.scala-ide.sdt.weaving.feature_1.0.0.201008022319.jar
       plugins
         org.aspectj.runtime_1.6.9.20100629172100.jar
         org.aspectj.weaver_1.6.9.20100629172100.jar
         org.eclipse.contribution.weaving.jdt_2.1.0.e35x-release-20100630-1500.jar
         org.eclipse.equinox.weaving.aspectj_1.0.0.v20100108.jar
         org.eclipse.equinox.weaving.hook_1.0.0.v20100108.jar
         org.scala-ide.scala.compiler_2.8.0.jar
         org.scala-ide.scala.library_2.8.0.jar
         org.scala-ide.sdt.aspects_1.0.0.201008022319.jar
         org.scala-ide.sdt.core_1.0.0.201008022319.jar
         org.scala-refactoring.library_0.2.0.201008022305.jar
         scalariform_0.0.5.201007302350.jar

Note:

The 'org.scala-ide.1.0.0.201008022319' folder directly under myPlugins could be any name actually! I just took a name inspired from the features id, to clearly identify the exact Scala plugin you are installing.
If you have several Scala versions in your myPlugins, p2 will detect the most recent one automatically, even if you install them in 'a/eclipse/...', 'b/eclipse/...', 'c/eclipse/...'.
I simply find 'org.scala-ide.1.0.0.201008022319' more precise than 'a', 'b' or 'c', in order to remember what exact plugins I have in my shared dropins.

You need to have the right Eclipse version (classic 3.5.2) in order to be sure to include all the dependencies the Scala plugin might need.


Local installation:

You could create the very same tree ('org.scala-ide.1.0.0.201008022319/eclipse/....') within the 'dropins' directory within your eclipse.
You won't need to declared a shared dropins directory in your eclipse.ini.

I just prefer using a shared dropins because I have many eclipse installations, but if you have the right eclipse, you can make the same tree directly in </path/to/your/eclipse/dropins>.


Dirty installation:

Finally, you could:

  • copy the content of 'http://download.scala-ide.org/update-current-35/plugins/' in the plugins directory of your eclipse.
  • copy the content of 'http://download.scala-ide.org/update-current-35/features/' in the features directory of your eclipse.

But I find that not very clean, because it mixes up the native plugins coming with your Eclipse distro and the extra plugins you are adding.

Comments