Best way to manage plugin & Scala versions

53 views
Skip to first unread message

Mads Hartmann Jensen

unread,
Jan 8, 2013, 7:30:58 AM1/8/13
to scala-...@googlegroups.com
Hi guys, 

What is the current best practice for a user of the IDE that has

- Projects both on Scala 2.9 and 2.10
- Want to be helpful and use the nightly version of the plugin but also have the stable versions installed safety

Currently to do this I have 4 eclipse installations, but I'm hoping there is a better way ;) 

Cheers,
Mads

Mirco Dotta

unread,
Jan 8, 2013, 11:00:08 AM1/8/13
to scala-...@googlegroups.com
You could try using "extension location" (look at http://www.ibm.com/developerworks/library/os-ecl-manage/
but there may be better documentation if you google longer ;-))

By doing so, you could have one single Eclipse installation, and four different eclipse-plugins folder. 
Then, before launching Eclipse, you could select (manually/script) what eclipse-plugins folder you want 
to use for the current run.

That said, I'm (still) old-fashion and use separate Eclipse installations for each Scala IDE plugin I want to use.

-- Mirco

---------------
Mirco Dotta
Typesafe - The software stack for applications that scale
PSE-D, 1015 Lausanne, Switzerland
Twitter: @mircodotta








Mads Hartmann Jensen

unread,
Jan 9, 2013, 3:22:29 AM1/9/13
to scala-...@googlegroups.com
Awesome, I'll have a look. If it turns out that it's something that is useful it might make sense to add it to the
documentation site. The easier we make it to try various version of the plugin the better IMO :) 

iulian dragos

unread,
Jan 9, 2013, 6:30:48 AM1/9/13
to scala-...@googlegroups.com
On Tue, Jan 8, 2013 at 1:30 PM, Mads Hartmann Jensen <mad...@gmail.com> wrote:
Hi guys, 

What is the current best practice for a user of the IDE that has

- Projects both on Scala 2.9 and 2.10

I use different eclipse instances for 2.9 and 2.10. Smarter ways there may be, but ultimately they all slow me down.
 
- Want to be helpful and use the nightly version of the plugin but also have the stable versions installed safety

I always use the nightly. I haven't had any troubles in a very long time, so as long as you plan to develop the IDE itself, this is the recommended configuration.
 

Currently to do this I have 4 eclipse installations, but I'm hoping there is a better way ;) 

Cheers,
Mads



--
« Je déteste la montagne, ça cache le paysage »
Alphonse Allais

Mirko Stocker

unread,
Jan 9, 2013, 6:40:40 AM1/9/13
to scala-...@googlegroups.com
On Wednesday 09 January 2013 12:30:48 iulian dragos wrote:
> What is the current best practice for a user of the IDE that has
>
> - Projects both on Scala 2.9 and 2.10
>
> I use different eclipse instances for 2.9 and 2.10. Smarter ways there may
> be, but ultimately they all slow me down.

Me too, my directory structure looks like this:

├── 2.10
│ ├── eclipse
│ ├── eclipse-indigo
│ ├── m2repo
│ ├── runtime-Scala
│ ├── scala-ide
│ ├── scala-refactoring
│ └── workspace
├── 2.11
│ ├── eclipse
│ ├── eclipse-indigo
│ ├── m2repo
│ ├── runtime-Scala
│ ├── scala-ide
│ ├── scala-refactoring
│ └── workspace
└── 2.9
├── eclipse
├── eclipse-helios
├── eclipse-indigo
├── runtime-Scala
├── scala-ide
├── scala-ide-docs
├── scala-ide.github.com
├── scala-ide-play2
├── scala-refactoring
└── workspace

This wastes a lot of disk space, but I have three independent environments,
with separate repositories, installations, etc. which I can even use
concurrently (e.g. when I want to debug a failing test case with different
Scala versions).

Cheers

Mirko

--
Mirko Stocker | m...@misto.ch
Work: http://ifs.hsr.ch | http://infoq.com
Personal: http://misto.ch | http://twitter.com/m_st

Mads Hartmann Jensen

unread,
Jan 18, 2013, 5:46:45 PM1/18/13
to scala-...@googlegroups.com
Hi everyone,

I finally tried out the approach that Mirco linked to. I almost have it working now, I just need to find a way to enable JDT Weaving from the command line. Would any of you know how to do it? I Googled around a bit but wasn't able to figure it out.

Cheers,
Mads

Mads Hartmann Jensen

unread,
Jan 19, 2013, 10:05:51 AM1/19/13
to scala-...@googlegroups.com
Using Indigo it now works but Juno is prompting about JDT Weaving. I'll investigate some more. 

In case anyone is interested I have the following folder structure now.

|-- dropins
  |-- scala-2.9
     |-- indigo
       |-- scalaide-nightly-indigo-master-29x
     |-- juno
       |-- scalaide-nightly-juno-master-29x
  |-- scala-2.10 (Same as above, just other plugins)
|-- plugins (Place plugins here that can be shared, e.g. jrebel, instataSearch, and use *.link files in the dropins folder)
|-- preferences
   |-- preferences.epf
|-- workspaces
   |– scala-2.9-workspace
   |-- scala-2.10-workspace
   |-- scala-2.11-workspace
|-- launch.sh
|-- eclipse.ini (general settings that should be shared)

The launch script currently looks like this

-- begin
eclipseVersion=$1 # juno or indigo
scalaVersion=$2   # 2.10 or 2.9

rest=`tr '\n' ' ' < /Users/mads379/dev/eclipse-setup/eclipse.ini` 
eclipse=/Applications/eclipse-installations/$eclipseVersion/Eclipse.app
preferenceFile=/Users/mads379/dev/eclipse-setup/preferences/preferences.epf
workspace=~/dev/eclipse-setup/workspaces/scala-$scalaVersion-workspace

cmd="open -n $eclipse --args -pluginCustomization $preferenceFile -data $workspace --launcher.XXMaxPermSize 256m -vmargs -Dorg.eclipse.equinox.p2.reconciler.dropins.directory=/Users/mads379/dev/eclipse-setup/dropins/scala-$scalaVersion/$eclipseVersion $rest"

echo "\nRunning $eclipseVersion using Scala $scalaVersion\n"
echo "$cmd\n"
echo "Have fun\n"

`$cmd`
-- end
Reply all
Reply to author
Forward
0 new messages