Bug 567139 - IDE for C/C++ 2020-09 + Java Development Tools + Scala IDE fails on weaving error
Summary: IDE for C/C++ 2020-09 + Java Development Tools + Scala IDE fails on weaving e...
Status: CLOSED NOT_ECLIPSE
Alias: None
Product: AspectJ
Classification: Tools
Component: Runtime (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: aspectj inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-09-18 20:46 EDT by Mike . CLA
Modified: 2020-11-12 02:42 EST (History)
2 users (show)

See Also:


Attachments
.log file (503.79 KB, text/x-log)
2020-09-18 20:46 EDT, Mike . CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mike . CLA 2020-09-18 20:46:46 EDT
Created attachment 284184 [details]
.log file

This is a new installation of the IDE for C/C++ 2020-09, with the Scala IDE added from the Marketplace, and the Java Development Tools. I originally saw this when I seem to have accidentally upgraded the CDT in a 2020-06 installation (also with the Scala IDE). That led me to do the fresh 2020-09 install.

Eclipse is apparently using an internal Java 14, but I also see this when I point it to an external Java 11. Obviously this release needs Java 11+.

The key message seems to be:

org.aspectj.weaver.BCException: Unable to find Asm for stackmap generation (Looking for 'aj.org.objectweb.asm.ClassReader'). Stackmap generation for woven code is required to avoid verify errors on a Java 1.7 or higher runtime
when weaving type org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector
when weaving classes 
when weaving
Comment 1 Mike . CLA 2020-09-18 20:51:07 EDT
The bug renders Eclipse unusable, causing directory names to be blank in the Project Explorer, and producing this error window with most operations.
Comment 2 Mike . CLA 2020-09-18 22:57:41 EDT
Workaround is to install the 2020-06 release and avoid upgrades.
Comment 3 Thomas Watson CLA 2020-10-22 08:22:39 EDT
Sorry for the slow triage, I think this needs to be looked at by the AspectJ project.
Comment 4 Martin Lippert CLA 2020-11-10 09:39:02 EST
From what I can see here is that the Scala IDE uses a quite old version of the weaving hook implementation from AspectJ, wich is probably not compatible with the latest JDK versions. I need to take a deeper look into this, but most likely the Scala IDE need to update their included Equinox AspectJ Weaving hook feature.
Comment 5 Martin Lippert CLA 2020-11-10 11:00:48 EST
It looks indeed like the old weaving implementation that is used by the Scala IDE is not compatible with recent JDK versions and needs an update.

I verified this by installing the Equinox Weaving parts from this update site:
https://download.eclipse.org/tools/ajdt/410/dev/update/

into a plain C++ 2020-09 package and that seems to be working just fine. So please report this issue to the Scala IDE, so that they can update the version of the Weaving SDK that they include.

Unfortunately, I have no idea for a workaround. Installing the working version of the Weaving SDK before installing the Scala IDE doesn't work, since the Scala IDE downgrades the weaving SDK pieces again to the older version that doesn't work.

So closing this one here as NOT_ECLIPSE, since Scala IDE needs to publish a newer version that includes an updated version of the Weaving SDK.
Comment 6 Mike . CLA 2020-11-12 02:42:42 EST
It appears that Scala IDE is no longer being developed since the ENSIME project shut down, with some drama. Metals and VSCode is the new thing. I guess I learned this after opening this bug.