Tom
----- Original message -----
From: Ed Willink <e...@willink.me.uk>
Sent by: cross-project-issues-dev-boun...@eclipse.org
To: cross-project-issues-dev@eclipse.org
Cc:
Subject: [cross-project-issues-dev] ASM for Java 9 (was Re: Java 9 Readiness)
Date: Thu, Mar 16, 2017 7:16 AM
Hi Dani
I kind of feel that the ASM guys know that Java 9 needs support. One day it will be there, might already be on a branch just like JDT's BETA. An Orbit update will no doubt follow.
For Oxygen/Update 1 usage in Eclipse each project has to do its best. My projects offer at least one old Eclipse version of compatibility, so I cannot mandate a brand new Java 9 ASM for Mars users.
Fortunately JaCoCo have identifed that ASM works fine just so long as you pretend that Java 9 class files are Java 8.
Since I use ASM for @NonNull analysis only, I can have a very simple read-time workaround:
/**
* Set true if ASM has Java 9 support, else false and Java 9 classes will be downgraded to look like Java 8.
*/
private boolean hasOpcodes_V1_9 = false;....
try {
hasOpcodes_V1_9 = Opcodes.class.getField("V1_9") != null;
}
catch (Exception e) {}
....
... = new ClassReader(classStream)
{
...
@Override
public short readShort(int index) {
short readShort = super.readShort(index);
if ((index == 6) && !hasOpcodes_V1_9 && (readShort > Opcodes.V1_8)) {
return Opcodes.V1_8;
}
return readShort;
}
};
I can keep the above code unchanged till Java 10 at which point I can assess whether Java 8 is dead.
Regards
Ed Willink
On 16/03/2017 11:55, Daniel Megert wrote:> and added a new table for Orbit utility; ASM bombs on Java 9 classes.
Hi Ed
Since you are you using that bundle, please file a bug report against them and also one in Eclipse to track the adoption of the fixed bundle.
Thanks,
Dani
From: Ed Willink <e...@willink.me.uk>
To: cross-project-issues-dev@eclipse.org
Date: 14.03.2017 22:08
Subject: Re: [cross-project-issues-dev] Java 9 Readiness
Sent by: cross-project-issues-dev-boun...@eclipse.org
Hi
@Ed M: Thanks, your explanation about the licensing problems explians
why the builds are unhelpful. I've added this to the Wiki.
@Michael: The Marketplace installation works wonderfully, but only once
the Marketplace client is installed. I've added this to the Wiki.
@Dani: I've clarified my confusions in the wiki and added a new table
for Orbit utility; ASM bombs on Java 9 classes.
Exercising OCL fairly successfully provides encouraging indications for
EMF, UML2, Xtext. Do you want provisional entries for these projects?
Regards
Ed Willink
---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev
This email has been checked for viruses by Avast antivirus software.
www.avast.com_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev
_______________________________________________ cross-project-issues-dev mailing list cross-project-issues-dev@eclipse.org To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev