This page is no longer maintained — Please continue to the home page at www.scala-lang.org

Eclipse Scala IDE (RC2) for Scala 2.9 and 2.8 is out

5 replies
Eclipse Scala IDE
Joined: 2011-07-21,
User offline. Last seen 42 years 45 weeks ago.
A new Release Candidate (RC2) for the coming 2.0.0 final release of the Eclipse IDE for Scala is ready for download! This release candidate includes one additional fix in the presentation compiler, better error reporting, and a few improvements affecting interoperability of mixed Scala/Java projects.  We will wait at least one week before issuing a final release, in order to allow developers and testers to send us their feedback. 
As usual, this release comes in two flavors: the 2.9.1 version, and the 2.8.3-SNAPSHOT version.

The 2.8 compiler shipped with this version of the plugin is based on the development branch of 2.8.3, and is fully binary compatible with both 2.8.2 and 2.8.1. It contains the same improvements to the presentation compiler as the 2.9 version, and a number of bug fixes related to Java signatures. Also note that the 2.9.1 compiler shipped with this version of the plugin is fully binary compatile with both 2.9.0-1 and 2.9.0.

What's new:

  • Better error reporting. [#1000757]
  • Fixed crash in the Eclipse Outline. [#1000748]
  • protected Scala entities are now exposed to Java code as public (this matches Scala compiler behavior). [#1000751]
  • Scan project's dependencies only for Scala projects. [#1000643]
  • Better error handling for missing class files in dependent projects.

A list of fixed tickets for this release is available here:

http://scala-ide-portfolio.assembla.com/spaces/ae55a-oWSr36hpeJe5avMc/tickets/report/u116583

You can install the new release by pointing Eclipse to the following update site:

for the 2.9.1 version: http://download.scala-ide.org/releases-29/stable/site

for the 2.8.3-SNAPSHOT version: http://download.scala-ide.org/releases-28/stable/site

Other releases can be found at:

http://download.scala-ide.org

Both plugins are ensured to work with Eclipse 3.6 (Helios), which is currently the officially supported Eclipse platform for the Scala IDE. Support for Eclipse 3.7 (Indigo) is experimental.


Happy Scala coding!

-- The Eclipse Scala IDE Team

Konstantine Kougios
Joined: 2011-04-08,
User offline. Last seen 47 weeks 2 days ago.
Re: Eclipse Scala IDE (RC2) for Scala 2.9 and 2.8 is out

Hi, I updated to this version, but it is broken. I was just trying to
issue a couple of major issues that I came across but I can't see the
"Add Ticket" button on your ticket system (I've logged in using my
gmail account). Anyway,I'll write them down here:

1. In a Java project, I can't open a type anymore (put the cursor on
top of a class and press F3). I get a popup with the following error
message: java.lang.NoClassDefFoundError: org/eclipse/contribution/jdt/
itdawareness/IJavaContentAssistProvider , the eclipse error log
follows at the end of this post.

2. I can't revert eclipse to the state before installing RC02. Do you
keep previous versions on your update site?

3. Can't run testcases, neither Java nor Scala. I've to modify the
testcase, save it, sometimes it runs sometimes it doesn't, maybe then
clean and rebuild the project, sometime it works and sometime it
doesn't. I did have this issue in the past but it was rare, now this
problem is occuring most of the time.

How can I enter those as bugs?

Eclipse installation details:
Eclipse Java EE IDE for Web Developers.

Version: Indigo Service Release 1
Build id: 20110916-0149

(with springIDE and M2E plugins, all my projects are maven projects)

Regards,

Kostas

Stacktrace for problem #1:

java.lang.reflect.InvocationTargetException
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:
421)
at
org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:
507)
at
org.eclipse.ui.internal.progress.ProgressMonitorJobsDialog.run(ProgressMonitorJobsDialog.java:
275)
at org.eclipse.ui.internal.progress.ProgressManager
$5.run(ProgressManager.java:960)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:
70)
at
org.eclipse.ui.internal.progress.ProgressManager.busyCursorWhile(ProgressManager.java:
995)
at
org.eclipse.ui.internal.progress.ProgressManager.busyCursorWhile(ProgressManager.java:
970)
at
org.eclipse.jdt.internal.ui.actions.SelectionConverter.performForkedCodeResolve(SelectionConverter.java:
264)
at
org.eclipse.jdt.internal.ui.actions.SelectionConverter.codeResolveForked(SelectionConverter.java:
170)
at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:158)
at
org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:
279)
at
org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:
251)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.ui.commands.ActionHandler.execute(ActionHandler.java:
185)
at
org.eclipse.ui.internal.handlers.LegacyHandlerWrapper.execute(LegacyHandlerWrapper.java:
109)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:
476)
at
org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:
508)
at
org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:
169)
at
org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:
468)
at
org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:
786)
at
org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:
885)
at
org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:
567)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access
$3(WorkbenchKeyboard.java:508)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard
$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:123)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1531)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1257)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1282)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1267)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1294)
at org.eclipse.swt.widgets.Widget.gtk_key_press_event(Widget.java:
730)
at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:
3019)
at
org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:
734)
at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1743)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:5016)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4408)
at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:8422)
at org.eclipse.swt.widgets.Display.eventProc(Display.java:1245)
at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native
Method)
at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:
2276)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3207)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:
2696)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:
332)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:
667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:
149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:
123)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:
196)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:
110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:
79)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:
344)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:
179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Caused by: java.lang.NoClassDefFoundError: org/eclipse/contribution/
jdt/itdawareness/IJavaContentAssistProvider
at
org.eclipse.ajdt.internal.core.contentassist.ContentAssistProviderAdapterFactory.getAdapter(ContentAssistProviderAdapterFactory.java:
21)
at
org.eclipse.core.internal.adapter.AdapterFactoryProxy.getAdapter(AdapterFactoryProxy.java:
80)
at
org.eclipse.core.internal.runtime.AdapterManager.getAdapter(AdapterManager.java:
295)
at
org.eclipse.core.runtime.PlatformObject.getAdapter(PlatformObject.java:
66)
at
org.eclipse.contribution.jdt.itdawareness.ContentAssistAdapter.getAdapter(ContentAssistAdapter.java:
45)
at
org.eclipse.contribution.jdt.itdawareness.ContentAssistAdapter.getProvider(ContentAssistAdapter.java:
37)
at
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect_aroundBody1$advice(CompilationUnit.java:
313)
at
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect(CompilationUnit.java:
1)
at
org.eclipse.jdt.internal.ui.actions.SelectionConverter.codeResolve(SelectionConverter.java:
273)
at org.eclipse.jdt.internal.ui.actions.SelectionConverter
$1CodeResolveRunnable.run(SelectionConverter.java:257)
at org.eclipse.jface.operation.ModalContext
$ModalContextThread.run(ModalContext.java:121)
Root exception:
java.lang.NoClassDefFoundError: org/eclipse/contribution/jdt/
itdawareness/IJavaContentAssistProvider
at
org.eclipse.ajdt.internal.core.contentassist.ContentAssistProviderAdapterFactory.getAdapter(ContentAssistProviderAdapterFactory.java:
21)
at
org.eclipse.core.internal.adapter.AdapterFactoryProxy.getAdapter(AdapterFactoryProxy.java:
80)
at
org.eclipse.core.internal.runtime.AdapterManager.getAdapter(AdapterManager.java:
295)
at
org.eclipse.core.runtime.PlatformObject.getAdapter(PlatformObject.java:
66)
at
org.eclipse.contribution.jdt.itdawareness.ContentAssistAdapter.getAdapter(ContentAssistAdapter.java:
45)
at
org.eclipse.contribution.jdt.itdawareness.ContentAssistAdapter.getProvider(ContentAssistAdapter.java:
37)
at
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect_aroundBody1$advice(CompilationUnit.java:
313)
at
org.eclipse.jdt.internal.core.CompilationUnit.codeSelect(CompilationUnit.java:
1)
at
org.eclipse.jdt.internal.ui.actions.SelectionConverter.codeResolve(SelectionConverter.java:
273)
at org.eclipse.jdt.internal.ui.actions.SelectionConverter
$1CodeResolveRunnable.run(SelectionConverter.java:257)
at org.eclipse.jface.operation.ModalContext
$ModalContextThread.run(ModalContext.java:121)

On Nov 24, 9:58 am, Eclipse Scala IDE
wrote:
> A new Release Candidate (RC2) for the coming 2.0.0 final release of the Eclipse IDE for Scala is ready for download! This release candidate includes one additional fix in the presentation compiler, better error reporting, and a few improvements affecting interoperability of mixed Scala/Java projects.  We will wait at least one week before issuing a final release, in order to allow developers and testers to send us their feedback.
>
> As usual, this release comes in two flavors: the 2.9.1 version, and the 2.8.3-SNAPSHOT version.
> The 2.8 compiler shipped with this version of the plugin is based on the development branch of 2.8.3, and is fully binary compatible with both 2.8.2 and 2.8.1. It contains the same improvements to the presentation compiler as the 2.9 version, and a number of bug fixes related to Java signatures. Also note that the 2.9.1 compiler shipped with this version of the plugin is fully binary compatile with both 2.9.0-1 and 2.9.0.
>
> What's new:
>
> Better error reporting. [#1000757]
> Fixed crash in the Eclipse Outline. [#1000748]
> protected Scala entities are now exposed to Java code as public (this matches Scala compiler behavior). [#1000751]
> Scan project's dependencies only for Scala projects. [#1000643]
> Better error handling for missing class files in dependent projects.
> A list of fixed tickets for this release is available here:
>
> http://scala-ide-portfolio.assembla.com/spaces/ae55a-oWSr36hpeJe5avMc...
>
> You can install the new release by pointing Eclipse to the following update site:
>
> for the 2.9.1 version:http://download.scala-ide.org/releases-29/stable/site
>
> for the 2.8.3-SNAPSHOT version:http://download.scala-ide.org/releases-28/stable/site
>
> Other releases can be found at:
>
> http://download.scala-ide.org
>
> Both plugins are ensured to work with Eclipse 3.6 (Helios), which is currently the officially supported Eclipse platform for the Scala IDE. Support for Eclipse 3.7 (Indigo) is experimental.
>
> Happy Scala coding!

dotta
Joined: 2011-10-18,
User offline. Last seen 16 weeks 3 days ago.
Re: Eclipse Scala IDE (RC2) for Scala 2.9 and 2.8 is out

(I think it would be better to move this discussion to the scala-ide-user mailing list -
http://groups.google.com/group/scala-ide-user -, I'm cross-posting my answer there).

> Hi, I updated to this version, but it is broken. I was just trying to
> issue a couple of major issues that I came across but I can't see the
> "Add Ticket" button on your ticket system (I've logged in using my
> gmail account).

Hi, I know, the "New Ticket" button it is not displayed in the Tickets tab.
It is unintuitive and apparently there is no way to show it there. You can
create a new ticket via the Support tab:

http://scala-ide-portfolio.assembla.com/spaces/scala-ide/support/tickets

Which is the page opened if in Eclipse you click on the menu item
Scala > Report a Bug... (then you should see the "Report a bug" link).
Mind that the Scala menu item is only shown when using the Scala Perspective, in Eclipse.

> Anyway,I'll write them down here:
>
> 1. In a Java project, I can't open a type anymore (put the cursor on
> top of a class and press F3). I get a popup with the following error
> message: java.lang.NoClassDefFoundError: org/eclipse/contribution/jdt/
> itdawareness/IJavaContentAssistProvider , the eclipse error log
> follows at the end of this post.

In the reported stacktrace there are no references to classes coming from the Scala IDE
plugin. In fact, as you are working on a plain Java project, I assume the project does not
even have the Scala Nature (please, check that). I see no apparent reason why updating
to the latest RC2 could have caused that issue, but maybe with a little more information
I can help tracking down the problem's root.

The `IJavaContentAssistProvider` comes from the AJDT plugin, which I'm confident you had it
installed before updating to the latest RC2, or the Scala IDE cannot properly work. The Scala
IDE is not the only Eclipse plugin relying on AJDT, for instance the SpringSource Tool Suite
(STS) also comes with the AJDT plugin pre-installed (I'm mentioning that because maybe the
springIDE also comes with a pre-packaged AJDT plugin).

If you go under Eclipse > Preferences, do you have a "JDT Weaving" menu? If yes, is
"JDT Weaving" enabled? (if it is disabled, please enable it and check if the issue goes away)

If you don't have a "JDT Weaving" menu, you may want to install the "JDT Weaving" plugin that
comes with the Scala IDE. You can install it through one of the usual update sites:

for Scala 2.9: http://download.scala-ide.org/releases-29/stable/site
for Scala 2.8: http://download.scala-ide.org/releases-28/stable/site

If you still have the issue at this point, it may help to see the list of installed plugins (Eclipse >
About Eclipse SDK > Installation Details).

> 2. I can't revert eclipse to the state before installing RC02. Do you
> keep previous versions on your update site?

Sure, here is the link http://download.scala-ide.org/builds/beta-29-2.0.0/

After uninstalling the Scala IDE, does the above error still occur? (because I'd not be surprised if it does)

> 3. Can't run testcases, neither Java nor Scala. I've to modify the
> testcase, save it, sometimes it runs sometimes it doesn't, maybe then
> clean and rebuild the project, sometime it works and sometime it
> doesn't. I did have this issue in the past but it was rare, now this
> problem is occuring most of the time.

At any rate, that should not happen. If you have a way to reproduce this, you should definitely
file a ticket. If you can't isolate it, maybe it is worth discussing this point in the scala-user ML, as
other people may have seen a similar behavior, and therefore they can help isolating the issue.

Cheers,
Mirco

dotta
Joined: 2011-10-18,
User offline. Last seen 16 weeks 3 days ago.
Re: Eclipse Scala IDE (RC2) for Scala 2.9 and 2.8 is out

> worth discussing this point in the scala-user ML

I meant the scala-ide-user ML, sorry for the typo.

maciek.makowski
Joined: 2009-12-05,
User offline. Last seen 29 weeks 4 days ago.
Re: Eclipse Scala IDE (RC2) for Scala 2.9 and 2.8 is out

For the record, these sound like the same issues I reported on scala-ide-user last week.

Konstantine Kougios
Joined: 2011-04-08,
User offline. Last seen 47 weeks 2 days ago.
Re: Eclipse Scala IDE (RC2) for Scala 2.9 and 2.8 is out

Hi, thanks all, I've opened 2 bug tickets: #1000780 , #1000781

It might be a combination of plugins that cause these issues, i.e.
scala-ide + springIDE or m2e.

Copyright © 2012 École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland