Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mat-dev] IBM DTFJ Feature update will require Java 1.8

Andrew,

thanks for that. It's good that we won't break the MAT builds.

I was looking for a way to prevent the DTFJ feature installing if you were running with Java 1.7 but even specifying
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
in the plugins only ensures that the underlying eclipse can support Java 1.8.

So what happens now if I am eg running MAT (Mars) on Java 1.7 and install the updated DTFJ feature? Well when trying to open an IBM core file you get:

>>
No parser registered for file

Error while creating IIndexBuilder 'indexBuilder'
org.eclipse.core.runtime.CoreException: Plug-in "org.eclipse.mat.dtfj" was unable to instantiate class "org.eclipse.mat.dtfj.DTFJIndexBuilder".
        at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.throwException(RegistryStrategyOSGI.java:194)
        at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:188)
        at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
        at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
        at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
        at org.eclipse.mat.parser.internal.util.ParserRegistry$Parser.create(ParserRegistry.java:85)
        at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:196)
        at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.openSnapshot(SnapshotFactoryImpl.java:126)
        at org.eclipse.mat.snapshot.SnapshotFactory.openSnapshot(SnapshotFactory.java:145)
        at org.eclipse.mat.ui.snapshot.ParseHeapDumpJob.run(ParseHeapDumpJob.java:83)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=com/ibm/dtfj/image/CorruptDataException, offset=6
<<

I'll see if I can get a more obvious exception thrown. I don't want to have a pre-req MAT change.

Cheers,

Peter G (Pete) Robbins
IBM Runtime Technologies

Phone: 44-1962-818667
E-mail:
ROBBINS@xxxxxxxxxx
IBM Monitoring and Diagnostic Tools:
www.ibm.com/developerworks/java/jdk/tools/
Find me on:
Twitter: http://twitter.com/ibm_jtc YouTube: http://www.youtube.com/user/ibmjtc
IBM

Hursley Park
Hursley, SO212JN
United Kingdom





From:        Andrew Johnson <andrew_johnson@xxxxxxxxxx>
To:        Memory Analyzer Dev list <mat-dev@xxxxxxxxxxx>
Date:        05/09/2017 16:24
Subject:        Re: [mat-dev] IBM DTFJ Feature update will require Java 1.8
Sent by:        mat-dev-bounces@xxxxxxxxxxx




Pete,

Currently we build on Hudson at Eclipse.org with jdk1.8.0-latest

The build does run tests of MAT using DTFJ so that should still work.


We currently build MAT against Eclipse Mars - see parent/pom.xml, so as Mars has a 1.7 requirement then so does MAT. We did put a version check into the configuration a few releases ago, but I think this was just for Java 1.6, and if you point use Java 1.6 with MAT the check passes, so it then fails with a strange error message.


See 427081: Create stand-alone MAT based on Kepler (4.3)

https://bugs.eclipse.org/bugs/show_bug.cgi?id=427081#c7
https://bugs.eclipse.org/bugs/show_bug.cgi?id=427081#c8

for the settings which enforced the 1.6 check.


There was some work done on getting MAT standalone to build using Neon.

496550: Enable building RCPs with Neon

https://bugs.eclipse.org/bugs/show_bug.cgi?id=496550

497129: SWTBot test failures with Eclipse Neon in org.eclipse.mat.ui.rcp.tests.MemoryAnalyzerProductTest

https://bugs.eclipse.org/bugs/show_bug.cgi?id=497129

though bug 496550 has a comment: "Neon puts a requirement on java 1.8, so I would probably leave the (MAT) 1.6 packages based on an older one."


See also this for details of problems switching to Neon or Oxygen. This also changes the platform support - dropping a few and adding others, e.g. Neon Solaris is 64-bit only due to a lack of 32-bit Java 1.8 on Solaris. For Oxygen, Eclipse has dropped support for the following Unix based platforms: AIX, Solaris, HP-UX and s390 (and Linux PPC32),

https://dev.eclipse.org/mhonarc/lists/mat-dev/msg00493.html

If MAT is installed into Oxygen then Oxygen already has a Java 1.8 requirement.


There is also this bug:

520963: Building MAT on older versions of Eclipse such as 3.6/Helios

https://bugs.eclipse.org/bugs/show_bug.cgi?id=520963

Changing the DTFJ update site might be possible for two versions, but would cause confusion and also MAT 1.7 now comes with a link to the current update site.


In conclusion:

1. I think the MAT builds will succeed with the new version of DTFJ

2. We should have a Java version check for 1.7 for MAT

3. Will there be a helpful error message if running DTFJ and MAT under Java 1.7?
4. We may need to update some project pages / forums / wiki to explain about the Java 1.8 requirement for DTFJ

5. We should investigate further building standalone MAT against Neon (or Oxygen), but check the download stats for the effect on people of removing some platform support.



Andrew Johnson





From:        
Pete Robbins <ROBBINS@xxxxxxxxxx>
To:        
Memory Analyzer Dev list <mat-dev@xxxxxxxxxxx>
Date:        
31/08/2017 10:26
Subject:        
[mat-dev] IBM DTFJ Feature update will require Java 1.8
Sent by:        
mat-dev-bounces@xxxxxxxxxxx




In the next few weeks we will be updating the IBM DTFJ Feature with support for recent IBM SDKs. This has a requirement to run on Java 1.8 (IBM or OpenJDK).


Will this change break MAT builds? Do you build with 1.8 or 1.7?

It may be possible to leave the current DTFJ Feature repo where it is and create a parallel one for the update and document how to install the new support.


Any thoughts?




Cheers,


Peter G (Pete) Robbins

IBM Runtime Technologies

Phone: 44-1962-818667
E-mail:
ROBBINS@xxxxxxxxxx
IBM Monitoring and Diagnostic Tools:
www.ibm.com/developerworks/java/jdk/tools/
Find me on:
Twitter: http://twitter.com/ibm_jtc YouTube: http://www.youtube.com/user/ibmjtc
IBM

Hursley Park
Hursley, SO212JN
United Kingdom




Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
_______________________________________________
mat-dev mailing list
mat-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit

https://urldefense.proofpoint.com/v2/url?u=https-3A__dev.eclipse.org_mailman_listinfo_mat-2Ddev&d=DwICAg&c=jf_iaSHvJObTbx-siA1ZOg&r=ZTto6FMoGzibQuF6a9pZRptntTTOD-lY0H7cn63oCg0&m=ZZ0KFy470TNu2CXR5H4bE0drfB3sFbt7aXnvruVw5j4&s=xqQpHg6FLxnvtb5_a_oNKPKVvjDq3DLMJrWNECp_Lp0&e=


Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
_______________________________________________
mat-dev mailing list
mat-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://urldefense.proofpoint.com/v2/url?u=https-3A__dev.eclipse.org_mailman_listinfo_mat-2Ddev&d=DwICAg&c=jf_iaSHvJObTbx-siA1ZOg&r=dI8A_He_iELJXQU5BAKB2xr70veiRL26AURXpoN29VI&m=piUkhdnN3LFaMyE4BY3JIjX2ePNueJzuD9afypJhyVs&s=8DitxzkF4SyAMUIfPx6jXjmUZ255kTz9Sz5yf4ZkFjo&e=


Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU

Back to the top