Closed reprogrammer closed 13 years ago
Keshmesh failed to install on Eclipse Helios (3.6.0). Eclipse reported the following problem after I confirmed that I trusted the unsigned content of the local update site.
eclipse.buildId=I20100608-0911 java.version=1.6.0_26 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.rcp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.rcp.product Error Fri Oct 21 18:14:09 CDT 2011 An error occurred while configuring the installed items eclipse.buildId=I20100608-0911 java.version=1.6.0_26 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.rcp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.rcp.product Error Fri Oct 21 18:14:09 CDT 2011 No action found for: org.eclipse.equinox.p2.touchpoint.eclipse.addJVMArg. java.lang.IllegalArgumentException: No action found for: org.eclipse.equinox.p2.touchpoint.eclipse.addJVMArg. at org.eclipse.equinox.internal.p2.engine.MissingAction.execute(MissingAction.java:42) at org.eclipse.equinox.internal.p2.engine.Phase.mainPerform(Phase.java:149) at org.eclipse.equinox.internal.p2.engine.Phase.perform(Phase.java:78) at org.eclipse.equinox.internal.p2.engine.PhaseSet.perform(PhaseSet.java:44) at org.eclipse.equinox.internal.p2.engine.Engine.perform(Engine.java:73) at org.eclipse.equinox.internal.p2.engine.Engine.perform(Engine.java:44) at org.eclipse.equinox.p2.operations.ProvisioningSession.performProvisioningPlan(ProvisioningSession.java:174) at org.eclipse.equinox.p2.operations.ProfileModificationJob.runModal(ProfileModificationJob.java:79) at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
The FindBugs team has published instructions for building and installing the FindBugs Eclipse plug-in.
The instructions didn't mention, but, I had to check out the plugins folder into my workspace. When I ran the build script suggested by the instructions, Ant reported the following compilation problems:
Buildfile: /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/build.xml init: clean: fbcompile: noUpdateChecks: [echo] Building Findbugs noUpdateChecks plugin plugin-jar: [jar] Building jar: /home/user/eclipse-workspaces/keshmesh/plugins/noUpdateChecks/build/noUpdateChecks.jar install: [copy] Copying 1 file to /home/user/eclipse-workspaces/keshmesh/findbugs/optionalPlugin fbjars: [echo] Copying Findbugs libraries and classes to Eclipse plugin [unzip] Expanding: /home/user/eclipse-workspaces/keshmesh/findbugs/lib/findbugs.jar into /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/bin_build [copy] Copying 10 files to /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/lib classes: [echo] Compiling FindBugs Eclipse plugin [javac] Compiling 133 source files to /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/bin_build [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:13: package edu.illinois.keshmesh.detector.bugs does not exist [javac] import edu.illinois.keshmesh.detector.bugs.BugPatterns; [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:14: package edu.illinois.keshmesh.detector.bugs does not exist [javac] import edu.illinois.keshmesh.detector.bugs.CodePosition; [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:15: package edu.illinois.keshmesh.detector.bugs does not exist [javac] import edu.illinois.keshmesh.detector.bugs.LCK02JFixInformation; [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:16: package edu.illinois.keshmesh.transformer.core does not exist [javac] import edu.illinois.keshmesh.transformer.core.LCK02JFixer; [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:14: package edu.illinois.keshmesh.detector.bugs does not exist [javac] import edu.illinois.keshmesh.detector.bugs.BugPatterns; [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:15: package edu.illinois.keshmesh.detector.bugs does not exist [javac] import edu.illinois.keshmesh.detector.bugs.CodePosition; [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:16: package edu.illinois.keshmesh.detector.bugs does not exist [javac] import edu.illinois.keshmesh.detector.bugs.LCK03JFixInformation; [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:17: package edu.illinois.keshmesh.transformer.core does not exist [javac] import edu.illinois.keshmesh.transformer.core.LCK03JFixer; [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/de/tobject/findbugs/FindbugsPlugin.java:241: warning: [deprecation] addSaveParticipant(org.eclipse.core.runtime.Plugin,org.eclipse.core.resources.ISaveParticipant) in org.eclipse.core.resources.IWorkspace has been deprecated [javac] ResourcesPlugin.getWorkspace().addSaveParticipant(this, saveParticipant); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/de/tobject/findbugs/properties/DetectorConfigurationTab.java:110: warning: [deprecation] getSpeed() in edu.umd.cs.findbugs.DetectorFactory has been deprecated [javac] s1 = factory1.getSpeed(); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/de/tobject/findbugs/properties/DetectorConfigurationTab.java:111: warning: [deprecation] getSpeed() in edu.umd.cs.findbugs.DetectorFactory has been deprecated [javac] s2 = factory2.getSpeed(); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/de/tobject/findbugs/properties/DetectorConfigurationTab.java:238: warning: [deprecation] getSpeed() in edu.umd.cs.findbugs.DetectorFactory has been deprecated [javac] return factory.getSpeed(); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/de/tobject/findbugs/view/explorer/FilterBugsDialog.java:172: warning: [deprecation] FilteredTree(org.eclipse.swt.widgets.Composite,int,org.eclipse.ui.dialogs.PatternFilter) in org.eclipse.ui.dialogs.FilteredTree has been deprecated [javac] super(parent, treeStyle, filter); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/de/tobject/findbugs/view/explorer/FilterBugsDialog.java:394: warning: [deprecation] setAllChecked(boolean) in org.eclipse.jface.viewers.CheckboxTreeViewer has been deprecated [javac] checkList.setAllChecked(true); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/de/tobject/findbugs/view/explorer/FilterBugsDialog.java:410: warning: [deprecation] setAllChecked(boolean) in org.eclipse.jface.viewers.CheckboxTreeViewer has been deprecated [javac] checkList.setAllChecked(false); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:32: package edu.illinois.keshmesh.detector.bugs does not exist [javac] edu.illinois.keshmesh.detector.bugs.CodePosition keshmeshPosition = new CodePosition(bug.getPrimarySourceLineAnnotation() [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:32: cannot find symbol [javac] symbol : class CodePosition [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK02JKeshmeshResolution [javac] edu.illinois.keshmesh.detector.bugs.CodePosition keshmeshPosition = new CodePosition(bug.getPrimarySourceLineAnnotation() [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:39: package edu.illinois.keshmesh.detector.bugs does not exist [javac] edu.illinois.keshmesh.detector.bugs.BugInstance keshmeshBugInstance = new edu.illinois.keshmesh.detector.bugs.BugInstance( [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:39: package edu.illinois.keshmesh.detector.bugs does not exist [javac] edu.illinois.keshmesh.detector.bugs.BugInstance keshmeshBugInstance = new edu.illinois.keshmesh.detector.bugs.BugInstance( [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:40: cannot find symbol [javac] symbol : variable BugPatterns [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK02JKeshmeshResolution [javac] BugPatterns.LCK02J, keshmeshPosition, new LCK02JFixInformation(typeNames)); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:40: cannot find symbol [javac] symbol : class LCK02JFixInformation [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK02JKeshmeshResolution [javac] BugPatterns.LCK02J, keshmeshPosition, new LCK02JFixInformation(typeNames)); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:43: cannot find symbol [javac] symbol : class LCK02JFixer [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK02JKeshmeshResolution [javac] LCK02JFixer fixer = new LCK02JFixer(keshmeshBugInstance); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK02JKeshmeshResolution.java:43: cannot find symbol [javac] symbol : class LCK02JFixer [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK02JKeshmeshResolution [javac] LCK02JFixer fixer = new LCK02JFixer(keshmeshBugInstance); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:33: package edu.illinois.keshmesh.detector.bugs does not exist [javac] edu.illinois.keshmesh.detector.bugs.CodePosition keshmeshPosition = new CodePosition(bug.getPrimarySourceLineAnnotation() [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:33: cannot find symbol [javac] symbol : class CodePosition [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK03JKeshmeshResolution [javac] edu.illinois.keshmesh.detector.bugs.CodePosition keshmeshPosition = new CodePosition(bug.getPrimarySourceLineAnnotation() [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:43: package edu.illinois.keshmesh.detector.bugs does not exist [javac] edu.illinois.keshmesh.detector.bugs.BugInstance keshmeshBugInstance = new edu.illinois.keshmesh.detector.bugs.BugInstance( [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:43: package edu.illinois.keshmesh.detector.bugs does not exist [javac] edu.illinois.keshmesh.detector.bugs.BugInstance keshmeshBugInstance = new edu.illinois.keshmesh.detector.bugs.BugInstance( [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:44: cannot find symbol [javac] symbol : variable BugPatterns [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK03JKeshmeshResolution [javac] BugPatterns.LCK03J, keshmeshPosition, new LCK03JFixInformation(typeNames, isLock)); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:44: cannot find symbol [javac] symbol : class LCK03JFixInformation [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK03JKeshmeshResolution [javac] BugPatterns.LCK03J, keshmeshPosition, new LCK03JFixInformation(typeNames, isLock)); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:45: cannot find symbol [javac] symbol : class LCK03JFixer [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK03JKeshmeshResolution [javac] LCK03JFixer fixer = new LCK03JFixer(keshmeshBugInstance); [javac] ^ [javac] /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/src/edu/umd/cs/findbugs/plugin/eclipse/quickfix/LCK03JKeshmeshResolution.java:45: cannot find symbol [javac] symbol : class LCK03JFixer [javac] location: class edu.umd.cs.findbugs.plugin.eclipse.quickfix.LCK03JKeshmeshResolution [javac] LCK03JFixer fixer = new LCK03JFixer(keshmeshBugInstance); [javac] ^ [javac] Note: Some input files use unchecked or unsafe operations. [javac] Note: Recompile with -Xlint:unchecked for details. [javac] 24 errors [javac] 7 warnings BUILD FAILED /home/user/eclipse-workspaces/keshmesh/findBugsEclipsePlugin/build.xml:133: Compile failed; see the compiler error output for details. Total time: 11 seconds
The above compilation problems are because the ant script of FindBugs Eclipse plug-in doesn't know about Keshmesh. However, our patch makes the FindBugs Eclipse plug-in dependent on Keshmesh. So, I removed the patched and built the update site using the "site" target of the ant script of findBugsEclipsePlugin. However, the resulting update site didn't include Keshmesh again because the ant script doesn't know about Keshmesh.
Qualifying the actions in findBugsEclipsePlugin/META-INF/p2.inf by org.eclipse.equinox.p2.touchpoint.eclipse.
did not help. So, I removed findBugsEclipsePlugin/META-INF/p2.inf from my workspace. As a result, the installation completed without issuing the error in the above comment. However, FindBugs didn't work because its activator failed with the following error message in the error log.
eclipse.buildId=I20100608-0911 java.version=1.6.0_23 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.rcp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.rcp.product Error Wed Nov 23 01:28:04 CST 2011 An error occurred while automatically activating bundle edu.umd.cs.findbugs.plugin.eclipse (323). org.osgi.framework.BundleException: The activator de.tobject.findbugs.FindbugsPlugin for bundle edu.umd.cs.findbugs.plugin.eclipse is invalid at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:156) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:751) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:370) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:284) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:417) at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:265) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:106) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:453) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216) at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393) at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1197) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174) at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:904) 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.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:267) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:263) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition$1.run(FullDecoratorDefinition.java:64) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.runtime.Platform.run(Platform.java:888) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition.internalGetDecorator(FullDecoratorDefinition.java:59) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition.decorateText(FullDecoratorDefinition.java:132) at org.eclipse.ui.internal.decorators.FullTextDecoratorRunnable.run(FullTextDecoratorRunnable.java:26) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.decorators.DecoratorManager.safeDecorateText(DecoratorManager.java:566) at org.eclipse.ui.internal.decorators.DecoratorManager.decorateText(DecoratorManager.java:519) at org.eclipse.ui.internal.decorators.DecoratorManager$ManagedWorkbenchLabelDecorator.decorateText(DecoratorManager.java:161) at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.getStyledText(DecoratingStyledCellLabelProvider.java:200) at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.update(DelegatingStyledCellLabelProvider.java:103) at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.update(DecoratingStyledCellLabelProvider.java:134) at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:152) at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:934) at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:102) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:1014) at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:481) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2141) at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:829) at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2709) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1867) at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:721) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1842) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1799) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart$PackageExplorerProblemTreeViewer.internalRefresh(PackageExplorerPart.java:256) at org.eclipse.jface.viewers.StructuredViewer$8.run(StructuredViewer.java:1514) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1422) at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:403) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1383) at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1512) at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:548) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider$3.run(PackageExplorerContentProvider.java:935) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider.runUpdates(PackageExplorerContentProvider.java:194) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider.runPendingUpdates(PackageExplorerContentProvider.java:186) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider$1.runInUIThread(PackageExplorerContentProvider.java:164) at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:95) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3527) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3174) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2629) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2593) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2427) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:670) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:663) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: java.lang.NoClassDefFoundError: edu/umd/cs/findbugs/IGuiCallback at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2406) at java.lang.Class.getConstructor0(Class.java:2716) at java.lang.Class.newInstance0(Class.java:343) at java.lang.Class.newInstance(Class.java:325) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:151) ... 92 more Caused by: java.lang.ClassNotFoundException: edu.umd.cs.findbugs.IGuiCallback at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) ... 98 more Root exception: java.lang.NoClassDefFoundError: edu/umd/cs/findbugs/IGuiCallback at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2406) at java.lang.Class.getConstructor0(Class.java:2716) at java.lang.Class.newInstance0(Class.java:343) at java.lang.Class.newInstance(Class.java:325) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:151) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:751) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:370) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:284) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:417) at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:265) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:106) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:453) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216) at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393) at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1197) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174) at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:904) 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.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:267) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:263) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition$1.run(FullDecoratorDefinition.java:64) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.runtime.Platform.run(Platform.java:888) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition.internalGetDecorator(FullDecoratorDefinition.java:59) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition.decorateText(FullDecoratorDefinition.java:132) at org.eclipse.ui.internal.decorators.FullTextDecoratorRunnable.run(FullTextDecoratorRunnable.java:26) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.decorators.DecoratorManager.safeDecorateText(DecoratorManager.java:566) at org.eclipse.ui.internal.decorators.DecoratorManager.decorateText(DecoratorManager.java:519) at org.eclipse.ui.internal.decorators.DecoratorManager$ManagedWorkbenchLabelDecorator.decorateText(DecoratorManager.java:161) at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.getStyledText(DecoratingStyledCellLabelProvider.java:200) at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.update(DelegatingStyledCellLabelProvider.java:103) at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.update(DecoratingStyledCellLabelProvider.java:134) at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:152) at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:934) at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:102) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:1014) at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:481) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2141) at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:829) at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2709) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1867) at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:721) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1842) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1799) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart$PackageExplorerProblemTreeViewer.internalRefresh(PackageExplorerPart.java:256) at org.eclipse.jface.viewers.StructuredViewer$8.run(StructuredViewer.java:1514) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1422) at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:403) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1383) at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1512) at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:548) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider$3.run(PackageExplorerContentProvider.java:935) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider.runUpdates(PackageExplorerContentProvider.java:194) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider.runPendingUpdates(PackageExplorerContentProvider.java:186) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider$1.runInUIThread(PackageExplorerContentProvider.java:164) at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:95) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3527) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3174) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2629) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2593) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2427) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:670) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:663) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: java.lang.ClassNotFoundException: edu.umd.cs.findbugs.IGuiCallback at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) ... 98 more eclipse.buildId=I20100608-0911 java.version=1.6.0_23 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.rcp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.rcp.product Error Wed Nov 23 01:28:04 CST 2011 Plug-in edu.umd.cs.findbugs.plugin.eclipse was unable to load class de.tobject.findbugs.decorators.ResourceBugCountDecorator. org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException: An error occurred while automatically activating bundle edu.umd.cs.findbugs.plugin.eclipse (323). at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:121) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:453) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216) at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393) at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:469) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1197) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174) at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:904) 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.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:267) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:263) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition$1.run(FullDecoratorDefinition.java:64) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.runtime.Platform.run(Platform.java:888) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition.internalGetDecorator(FullDecoratorDefinition.java:59) at org.eclipse.ui.internal.decorators.FullDecoratorDefinition.decorateText(FullDecoratorDefinition.java:132) at org.eclipse.ui.internal.decorators.FullTextDecoratorRunnable.run(FullTextDecoratorRunnable.java:26) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.decorators.DecoratorManager.safeDecorateText(DecoratorManager.java:566) at org.eclipse.ui.internal.decorators.DecoratorManager.decorateText(DecoratorManager.java:519) at org.eclipse.ui.internal.decorators.DecoratorManager$ManagedWorkbenchLabelDecorator.decorateText(DecoratorManager.java:161) at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.getStyledText(DecoratingStyledCellLabelProvider.java:200) at org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.update(DelegatingStyledCellLabelProvider.java:103) at org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider.update(DecoratingStyledCellLabelProvider.java:134) at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:152) at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:934) at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:102) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:1014) at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:481) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2141) at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:829) at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2709) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1867) at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:721) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1842) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1799) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart$PackageExplorerProblemTreeViewer.internalRefresh(PackageExplorerPart.java:256) at org.eclipse.jface.viewers.StructuredViewer$8.run(StructuredViewer.java:1514) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1422) at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:403) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1383) at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1512) at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:548) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider$3.run(PackageExplorerContentProvider.java:935) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider.runUpdates(PackageExplorerContentProvider.java:194) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider.runPendingUpdates(PackageExplorerContentProvider.java:186) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider$1.runInUIThread(PackageExplorerContentProvider.java:164) at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:95) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3527) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3174) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2629) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2593) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2427) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:670) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:663) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: org.osgi.framework.BundleException: The activator de.tobject.findbugs.FindbugsPlugin for bundle edu.umd.cs.findbugs.plugin.eclipse is invalid at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:156) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:751) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:370) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:284) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:417) at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:265) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:106) ... 86 more Caused by: java.lang.NoClassDefFoundError: edu/umd/cs/findbugs/IGuiCallback at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2406) at java.lang.Class.getConstructor0(Class.java:2716) at java.lang.Class.newInstance0(Class.java:343) at java.lang.Class.newInstance(Class.java:325) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:151) ... 92 more Caused by: java.lang.ClassNotFoundException: edu.umd.cs.findbugs.IGuiCallback at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) ... 98 more
I added the following to findbugs/build.properties .
bin.includes = META-INF/
The above change suppressed the above exception during the activation of the plug-ing. But, I still got the following exception:
eclipse.buildId=I20100608-0911 java.version=1.6.0_26 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.rcp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.rcp.product Error Wed Nov 23 16:20:48 CST 2011 An internal error occurred during: "Finding bugs in LCK06J...". java.lang.NoClassDefFoundError: org/dom4j/DocumentException at edu.umd.cs.findbugs.DetectorFactoryCollection.getCoreResource(DetectorFactoryCollection.java:357) at edu.umd.cs.findbugs.SystemProperties.loadPropertiesFromConfigFile(SystemProperties.java:72) at edu.umd.cs.findbugs.SystemProperties.(SystemProperties.java:55) at edu.umd.cs.findbugs.DetectorFactoryCollection. (DetectorFactoryCollection.java:60) at edu.umd.cs.findbugs.config.ProjectFilterSettings. (ProjectFilterSettings.java:105) at edu.umd.cs.findbugs.config.ProjectFilterSettings.createDefault(ProjectFilterSettings.java:134) at edu.umd.cs.findbugs.config.UserPreferences. (UserPreferences.java:131) at edu.umd.cs.findbugs.config.UserPreferences.createDefaultUserPreferences(UserPreferences.java:148) at de.tobject.findbugs.preferences.FindBugsPreferenceInitializer.createDefaultUserPreferences(FindBugsPreferenceInitializer.java:75) at de.tobject.findbugs.FindbugsPlugin.getWorkspacePreferences(FindbugsPlugin.java:910) at de.tobject.findbugs.FindbugsPlugin.getCorePreferences(FindbugsPlugin.java:854) at de.tobject.findbugs.FindbugsPlugin.getUserPreferences(FindbugsPlugin.java:934) at de.tobject.findbugs.builder.FindBugsWorker. (FindBugsWorker.java:101) at de.tobject.findbugs.actions.FindBugsAction$StartedFromViewJob.runWithProgress(FindBugsAction.java:263) at de.tobject.findbugs.FindBugsJob.run(FindBugsJob.java:102) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Caused by: java.lang.ClassNotFoundException: org.dom4j.DocumentException at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ... 16 more
I changed bin.includes
in findbugs/build.properties to the following:
bin.includes = META-INF/,\
lib/ant.jar,\
lib/asm-3.3.jar,\
lib/asm-tree-3.3.jar,\
lib/bcel.jar,\
lib/commons-lang-2.4.jar,\
lib/dom4j-1.6.1.jar,\
lib/jFormatString.jar,\
lib/jaxen-1.1.1.jar,\
lib/jcip-annotations.jar,\
lib/jdepend-2.9.jar,\
lib/jsr305.jar,\
lib/junit.jar,\
lib/asm-commons-3.3.jar,\
lib/AppleJavaExtensions.jar
As a result, I got the following exception when I tried to run the installed Keshmesh on a Java project:
eclipse.buildId=I20100608-0911 java.version=1.6.0_26 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.rcp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.rcp.product Error Wed Nov 23 16:34:51 CST 2011 An internal error occurred during: "Finding bugs in LCK06J...". java.lang.Error: Unresolved compilation problem: at edu.umd.cs.findbugs.ba.AnalysisContext.logError(AnalysisContext.java:316) at edu.umd.cs.findbugs.PluginLoader.init(PluginLoader.java:769) at edu.umd.cs.findbugs.PluginLoader.(PluginLoader.java:281) at edu.umd.cs.findbugs.PluginLoader.loadCorePlugin(PluginLoader.java:1298) at edu.umd.cs.findbugs.PluginLoader.loadInitialPlugins(PluginLoader.java:1253) at edu.umd.cs.findbugs.PluginLoader. (PluginLoader.java:147) at edu.umd.cs.findbugs.DetectorFactoryCollection.getCoreResource(DetectorFactoryCollection.java:357) at edu.umd.cs.findbugs.SystemProperties.loadPropertiesFromConfigFile(SystemProperties.java:72) at edu.umd.cs.findbugs.SystemProperties. (SystemProperties.java:55) at edu.umd.cs.findbugs.DetectorFactoryCollection. (DetectorFactoryCollection.java:60) at edu.umd.cs.findbugs.config.ProjectFilterSettings. (ProjectFilterSettings.java:105) at edu.umd.cs.findbugs.config.ProjectFilterSettings.createDefault(ProjectFilterSettings.java:134) at edu.umd.cs.findbugs.config.UserPreferences. (UserPreferences.java:131) at edu.umd.cs.findbugs.config.UserPreferences.createDefaultUserPreferences(UserPreferences.java:148) at de.tobject.findbugs.preferences.FindBugsPreferenceInitializer.createDefaultUserPreferences(FindBugsPreferenceInitializer.java:75) at de.tobject.findbugs.FindbugsPlugin.getWorkspacePreferences(FindbugsPlugin.java:910) at de.tobject.findbugs.FindbugsPlugin.getCorePreferences(FindbugsPlugin.java:854) at de.tobject.findbugs.FindbugsPlugin.getUserPreferences(FindbugsPlugin.java:934) at de.tobject.findbugs.builder.FindBugsWorker. (FindBugsWorker.java:101) at de.tobject.findbugs.actions.FindBugsAction$StartedFromViewJob.runWithProgress(FindBugsAction.java:263) at de.tobject.findbugs.FindBugsJob.run(FindBugsJob.java:102) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
When I examined the contents of edu.illinois.keshmesh.updatesite/logs.zip
, I noticed the following compilation problems:
The import net.jcip.annotations cannot be resolved
The import jdepend cannot be resolved
I added the following lines to the Bundle-ClassPath
entry in findbugs/META-INF/MANIFEST.MF:
lib/ant.jar,
lib/jcip-annotations.jar,
lib/jdepend-2.9.jar
As a result of the above change, I got the following exception when I tried to run the installed Keshmesh on a Java project:
eclipse.buildId=I20100608-0911 java.version=1.6.0_26 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Framework arguments: -product org.eclipse.epp.package.rcp.product Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.rcp.product Error Wed Nov 23 17:01:34 CST 2011 Failed to load plugin for custom detector: file:/home/user/apps/eclipse/downloads/3.6/rcp-helios/eclipse/plugins/edu.illinois.keshmesh.ui.findbugs_1.0.0.201111231659.jar/lib/KeshmeshDetectors.jar edu.umd.cs.findbugs.PluginException: Failed loading manifest for plugin jar: file:/home/user/apps/eclipse/downloads/3.6/rcp-helios/eclipse/plugins/edu.illinois.keshmesh.ui.findbugs_1.0.0.201111231659.jar/lib/KeshmeshDetectors.jar at edu.umd.cs.findbugs.PluginLoader.createClassloaderUrls(PluginLoader.java:247) at edu.umd.cs.findbugs.PluginLoader.(PluginLoader.java:193) at edu.umd.cs.findbugs.PluginLoader.getPluginLoader(PluginLoader.java:1183) at edu.umd.cs.findbugs.Plugin.addCustomPlugin(Plugin.java:665) at edu.umd.cs.findbugs.Plugin.addCustomPlugin(Plugin.java:680) at de.tobject.findbugs.FindbugsPlugin.addCustomPlugin(FindbugsPlugin.java:366) at de.tobject.findbugs.FindbugsPlugin.applyCustomDetectors(FindbugsPlugin.java:323) at de.tobject.findbugs.builder.FindBugsWorker.work(FindBugsWorker.java:144) at de.tobject.findbugs.actions.FindBugsAction$StartedFromViewJob.runWithProgress(FindBugsAction.java:265) at de.tobject.findbugs.FindBugsJob.run(FindBugsJob.java:102) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Caused by: java.io.FileNotFoundException: /home/user/apps/eclipse/downloads/3.6/rcp-helios/eclipse/plugins/edu.illinois.keshmesh.ui.findbugs_1.0.0.201111231659.jar/lib/KeshmeshDetectors.jar (Not a directory) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream. (FileInputStream.java:120) at java.io.FileInputStream. (FileInputStream.java:79) at sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:70) at sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:161) at java.net.URL.openStream(URL.java:1010) at edu.umd.cs.findbugs.PluginLoader.createClassloaderUrls(PluginLoader.java:228) ... 10 more
The main tricks to build the update site were to include the right artifacts in the build.properties
files and remove p2.inf
.
It would be nice to create an Eclipse update site for Keshmesh. The update site will allow people who are interested in trying out Keshmesh to easily install it on their Eclipse instances.