Cannot profile application running with JDK 1.4.2 [message #116980] |
Fri, 02 November 2007 08:19 |
Eclipse User |
|
|
|
Originally posted by: joerg.schaible.elsag-solutions.com
Hi,
it seems that profiling applications running with a JDK 1.4.2 runtime is
broken (using TPTP 4.4.0.3). Eclipse itself is running with JDK 1.6.0 and
the IAC starts successfully. I select the "Exeution Time Analysis" filter
from the "Java Profiling - pre JRE 1.5" group and start the profile action.
Eclipse switches into the "Profile and Logging" perspective and starts to
collect data, but fails quite immediately after the start with:
============ %< =============
java.lang.UnsupportedClassVersionError: org/eclipse/emf/ecore/EObject
(Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoade r.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274 )
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302 )
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoade r.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274 )
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302 )
at
org.eclipse.hyades.logging.commons.FileLoggerFactory.getInst ance(FileLoggerFactory.java:271)
at
org.eclipse.hyades.logging.commons.FileLoggerFactory.getInst ance(FileLoggerFactory.java:226)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java :645)
at
ip.report.provider.definition.AbstractIPReportProvider.<clinit >(AbstractIPReportProvider.java:59)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Nativ e Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(Native ConstructorAccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(De legatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:2 74)
at java.lang.Class.newInstance0(Class.java:308)
at java.lang.Class.newInstance(Class.java:261)
at
com.elsagsolutions.commons.lang.reflect.GeneralFactory.creat eInjectedInstance(GeneralFactory.java:487)
at integration.ReportProviderTest.<init>(ReportProviderTest.java:59)
at integration.ReportProviderTest.main(ReportProviderTest.java: 87)
Exception in thread "main"
============ %< =============
My application does not use any Eclipse classes, so the EObject.class must
be triggered by TPTP. For some reason the classpath seems to get mixed up
for the loggers.
Yes, I can profile JDK 1.5 applications. No, that application cannot run on
JDK 1.5. So I am stuck. Any suggestions?
- J
|
|
|
|
|
|
|
Re: Cannot profile application running with JDK 1.4.2 [message #117515 is a reply to message #117504] |
Thu, 08 November 2007 08:57 |
Eclipse User |
|
|
|
Originally posted by: alexander.n.alexeev.intel.com
Hi, Jörg.
Could you describe your case more precisely.
- That is type of your application?
- How do you profile it? ( as "Java application", "External Java
application" or "Eclipse application")
-
- What JAR should I put in class path to run you simple test?
By now I can propose one work around for profiling from Eclipse.
Try to profile your application as "Java application".
Set required classpath in "Classpath" tab.
And run profiling.
Thanks,
Alex
|
|
|
|
|
|
|
Re: Cannot profile application running with JDK 1.4.2 [message #118452 is a reply to message #118439] |
Mon, 19 November 2007 16:34 |
Eclipse User |
|
|
|
Originally posted by: alexander.n.alexeev.intel.com
Hi, Jörg.
Sorry for delay in response.
> However, since I am able to reproduce the problem with this minimal Java
> application posted here in this thread at 6th Nov. the basic problem is
> buried in TPTP rather than my client ;-)
I agree, this is bug in TPTP :(. The problem is identified and, as I
wrote, main point is substituting of redundant classpath to profiled JVM.
> So simply add a commons-logging-1.1.jar.
Got it, problem is reproduced
> However, this workaround is not really feasible for the real case ... we
> have a lot of deps. As next step I will try your suggestion with the
> external profiler.
If problem only with logging then it isn't so awesome to fix classpath
with only one jar. More general you should explicitly put in profiled JVM
classpath all JARs which overlap with JAR substituted by TPTP.
Unfortunately meanwhile I can't suggest you anything else.
List of substituted for TPTP 4.4.0.3:
com.ibm.icu_3.6.1.v20070906.jar
org.eclipse.core.runtime_3.3.100.v20070530.jar
org.eclipse.emf.common_2.3.0.v200709252135.jar
org.eclipse.emf.ecore_2.3.1.v200709252135.jar
org.eclipse.equinox.common_3.3.0.v20070426.jar
org.eclipse.hyades.execution_4.4.1.v200709261752\hexcore.jar
org.eclipse.hyades.execution_4.4.1.v200709261752\hexl.jar
org.eclipse.hyades.execution_4.4.1.v200709261752\hexr.jar
org.eclipse.hyades.logging.core_4.3.101.v200709261752\config .jar
org.eclipse.hyades.logging.core_4.3.101.v200709261752\hl14.j ar
org.eclipse.hyades.logging.core_4.3.101.v200709261752\hlcomm ons.jar
org.eclipse.hyades.logging.core_4.3.101.v200709261752\hlcore .jar
org.eclipse.hyades.logging.core_4.3.101.v200709261752\hllog4 j.jar
org.eclipse.osgi_3.3.1.R33x_v20070828.jar
org.eclipse.tptp.monitoring.instrumentation_4.3.1.v200709261 752\cbeModel.jar
org.eclipse.tptp.monitoring.instrumentation_4.3.1.v200709261 752\jmxModel.jar
org.eclipse.tptp.platform.collection.framework_4.2.101.v2007 09261752\hcframe.jar
org.eclipse.tptp.platform.logging.events_4.3.101.v2007092617 52\config.jar
org.eclipse.tptp.platform.logging.events_4.3.101.v2007092617 52\hlcbe101.jar
org.eclipse.tptp.platform.logging.events_4.3.101.v2007092617 52\tlcore.jar
org.eclipse.tptp.platform.logging.events_4.3.101.v2007092617 52\tlcbe101.jar
org.eclipse.tptp.platform.logging.events_4.3.101.v2007092617 52\tlcore.jar
org.eclipse.tptp.trace.arm_4.3.1.v200709261752\armLibrary.ja r
org.eclipse.tptp.trace.arm_4.3.1.v200709261752\armModel.jar
org.eclipse.tptp.trace.arm_4.3.1.v200709261752\cbeLogging.ja r
org.mx4j.jmx_3.0.3.v200709261752\mx4j.jar
org.mx4j.jmx_3.0.3.v200709261752\mx4j-remote.jar
org.opengroup.arm_4.0.1.v200709261752\arm40_java_interfaces. jar
BTW: did you manage to use standalone profiling?
> BTW: Should I create an issue in Bugzilla (if it is not already reported)?
I've already created an issuein Bugzilla
(https://bugs.eclipse.org/bugs/show_bug.cgi?id=209144). You can add
comments if consider them important.
Alex.
|
|
|
|
Powered by
FUDForum. Page generated in 0.05752 seconds