Classpath Helper Beta Release 0.9.2 Released

Discussions

News: Classpath Helper Beta Release 0.9.2 Released

  1. Classpath Helper Beta Release 0.9.2 Released (7 messages)

    The ClasspathHelper project has released a beta version 0.9.2 of it’s Eclipse based tool. This tool is designed to identify and graphically expose problems in an eclipse project classpath that can cause applications to run in unexpected ways.

    The jars and contained classes are displayed in a hierarchical ordered in the same way that they will be loaded. The view is annotated with different graphics to indicate which classes are blocked. The tool also identifies different versions of the same class that are in the classpath.

    Do you find managing a classpath to be an error prone task because it is such a chore? Would this tool be much more useful (i.e. useable in a production environement) if it were to also function outside of Eclipse?

    Threaded Messages (7)

  2. seems like something i am going to download the next time i run in to trouble regarding classpath settings. Very interesting!
  3. what gives?[ Go to top ]

    I wish i had time to debug every plugin that i get. That one looked so promising....

    java.lang.StackOverflowError
    at java.util.AbstractList$Itr.next(AbstractList.java:422)
    at classpathhelper.CompositeClassStoreContentsFilter.acceptItem(CompositeClassStoreContentsFilter.java:65)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:143)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
    at classpathhelper.DirectoryClassStore$FileIterator.hasNext(DirectoryClassStore.java:146)
  4. Overflow[ Go to top ]

    Hi Roman,
      Thanks for giving the code a shot. I'm looking at the code and question and would like a little more info about how this was encountered.

      Better yet, you could submit your bug to http://sourceforge.net/tracker/?group_id=147285&atid=767907 or if you'd like I will submit it. bryant_harris at hotmail dot com

      For the most part I've gotten positive feedback and the few bugs that have been reported I've been able to turn around in less than 24 hours.

    Thanks,
    Bryant (ClasspathHelper helper)
  5. Worked for me!!![ Go to top ]

    I installed the classpath helper, and it seems to be working fine. I was able to see duplicate classes that are in the project library (multiple xmlapi jars etc). I think this will help me in trimming down the distribution by removing unnecessary jars/classes.
  6. Overflow fixed[ Go to top ]

    Thanks for Roman for pointing this out. There was an issue of the code using recursion where a slightly more complicated while loop would have worked. I fixed the code and ran a regression of unit tests and all seems well. This issue would only have effected users with lots and lots of files (several thousand).

    If you are using 0.9.2 with no issues there's no rush to upgrade 0.9.3 since the code is functionally equivalent.
  7. I downloaded the 0.9.3 version and installed it. When I open the classpath view it is blank and doesn't show anything. I tried to look at the error logs this is what i got.

    org.osgi.framework.BundleException: Exception in classpathhelper.eclipse.ui.UIPlugin.stop() of bundle classpathhelper.eclipse.ui.
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop(BundleContextImpl.java:1051)
    at org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:394)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.stop(AbstractBundle.java:408)
    at org.eclipse.core.runtime.internal.adaptor.BundleStopper.basicStopBundles(BundleStopper.java:83)
    at org.eclipse.core.runtime.internal.adaptor.BundleStopper.stopBundles(BundleStopper.java:73)
    at org.eclipse.core.runtime.adaptor.EclipseAdaptor.frameworkStopping(EclipseAdaptor.java:766)
    at org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:528)
    at org.eclipse.osgi.framework.internal.core.SystemBundle$1.run(SystemBundle.java:171)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.NullPointerException
    at classpathhelper.eclipse.ui.ClassPathModelMultiplexer.stopClassPathListening(ClassPathModelMultiplexer.java:187)
    at classpathhelper.eclipse.ui.UIPlugin.stop(UIPlugin.java:83)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl$3.run(BundleContextImpl.java:1035)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop(BundleContextImpl.java:1031)
    ... 8 more
    Root exception:
    java.lang.NullPointerException
    at classpathhelper.eclipse.ui.ClassPathModelMultiplexer.stopClassPathListening(ClassPathModelMultiplexer.java:187)
    at classpathhelper.eclipse.ui.UIPlugin.stop(UIPlugin.java:83)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl$3.run(BundleContextImpl.java:1035)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop(BundleContextImpl.java:1031)
    at org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:394)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.stop(AbstractBundle.java:408)
    at org.eclipse.core.runtime.internal.adaptor.BundleStopper.basicStopBundles(BundleStopper.java:83)
    at org.eclipse.core.runtime.internal.adaptor.BundleStopper.stopBundles(BundleStopper.java:73)
    at org.eclipse.core.runtime.adaptor.EclipseAdaptor.frameworkStopping(EclipseAdaptor.java:766)
    at org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:528)
    at org.eclipse.osgi.framework.internal.core.SystemBundle$1.run(SystemBundle.java:171)
    at java.lang.Thread.run(Thread.java:595)


    ----------------------------------------

    I am using eclipse version on WinXP.
    Version: 3.1.1
    Build id: M20050929-0840

    The project has thousand's of files, but i also tried it on a small project which had only few hundred files.
  8. What's your source?[ Go to top ]

    Thanks Hiten,
      I looked over the source for this. I'll fix this null pointer but its actually occuring when you shutdown eclipse (looking at the stack trace) so its really a minor annoyance and I don't believe it is the cause of your problems.

      As for not seeing anything in the view it makes me suspect that your source has not been selected yet. By default Classpath Helper is configured to pull the classpath from Java projects within Eclipse (this is selectable from the properties area). Since you didn't mention changing this, then my next guess would be that you either don't have Package Explorer or Resource Navigator open or you haven't selected a java project from either of these.

      So give those things a try and let me know if you are still having problems. You can follow up at bryant_harris at hotmail dot com. And I'll definitly fix that null pointer issue during shutdown. I suspect there's an unaccounted for case when the view is open but no model is selected.

    -- Bryant