Hi Evgeny
Thanks. Workaround added to wiki.
Regards
Ed Willink
On 16/03/2017 00:16, Evgeny Mandrikov wrote:
Hi,
On Tue, Mar 14, 2017 at 10:08 PM Ed Willink <[email protected]
<mailto:[email protected]>> wrote:
@Dani: I've clarified my confusions in the wiki and added a new table
for Orbit utility; ASM bombs on Java 9 classes.
Prior to passing class bytes to ASM as a temporary workaround you can
change them, so that ASM will believe that it is V1_8. We use this
trick in JaCoCo - see
https://github.com/jacoco/jacoco/blob/v0.7.9/org.jacoco.core/src/org/jacoco/core/internal/Java9Support.java#L101
This is safe, because Java 9 does not introduce any new instructions.
Version can be restored after bytecode generation/modification - see
https://github.com/jacoco/jacoco/blob/v0.7.9/org.jacoco.core/src/org/jacoco/core/internal/Java9Support.java#L112
This way even bytes of module-info.class can be passed to ClassReader.
This does not bring much value without implementation of custom
encoder/decoder for new attribute Module that is otherwise simply
ignored. Also not sure how this works in respect to reading/writing of
new Constant Pool entries - we haven't experimented with this, because
module-info.class is not used and will not be used by JaCoCo. And
AFAIK format of this new entities was (maybe even still) very unstable.
HTH,
Evgeny
_______________________________________________
cross-project-issues-dev mailing list
[email protected]
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.
https://www.avast.com/antivirus
_______________________________________________
cross-project-issues-dev mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from
this list, visit
https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev