Good to know. Thanks for the interesting story about your dev process! On Jul 3, 2013 7:20 AM, "Stephen Connolly" <stephen.alan.conno...@gmail.com> wrote:
> To be expected if you don't have the Jenkins Enterprise RBAC plugin. I > think Jesse has made the exception less scary in more recent versions of > Jenkins. > > In this specific case it is a historical artifact of the way the two > plugins were developed. > > I developed the RBAC plugin while KK was working on the Folders plugin. I > got finished first and cut the initial release of the RBAC plugin. That was > finished testing and then we were doing tests on the Folders plugin when KK > had it ready. In order to add support for RBAC into folders, we put the > support in the Folders plugin (so as to avoid respinning the already tested > RBAC plugin - why I don't know as RBAC at the time had >98% test coverage > so it would have been safe to do so)... at that time the Folders and RBAC > plugins were both Enterprise only, so 99.99% of customers would have both > plugins installed and there would be no exception. > > Then the decision was made to move Folders to free (as in tell me your > name and I'll give you this beer)... perhaps we should have moved the > extension and the dependency over to RBAC but for maintaining backwards > compatibility the decision was made to keep the RBAC support within > Folders... and this scary exception is the corresponding result. > > TL;DR expected and perfectly normal don't worry about it > > > On 3 July 2013 11:54, Jerry <gpjerrymalo...@gmail.com> wrote: > >> I was trying to track down a memory leak in Jenkins (or a plugin) and >> came across the following in the log. I don't think it's related to the >> memory leak, and I haven't seen any effects of the exception, just thought >> someone (e.g., Stephen Connelly) might be interested in this. >> >> ----- >> >> Jul 02, 2013 3:55:10 PM hudson.ExtensionFinder$GuiceFinder$4$1 get >> WARNING: Failed to instantiate. Skipping this component >> com.google.inject.ProvisionException: Guice provision errors: >> >> 1) Error injecting constructor, java.lang.NoClassDefFoundError: >> nectar/plugins/rbac/groups/ProxyGroupContainer >> at >> com.cloudbees.hudson.plugins.folder.properties.FolderProxyGroupContainer$DescriptorImpl.<init>(FolderProxyGroupContainer.java:178) >> >> 1 error >> at >> com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:52) >> at com.google.inject.Scopes$1$1.get(Scopes.java:59) >> at hudson.ExtensionFinder$GuiceFinder$4$1.get(ExtensionFinder.java:422) >> at >> com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41) >> at >> com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:965) >> at >> com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1011) >> at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:961) >> at hudson.ExtensionFinder$GuiceFinder._find(ExtensionFinder.java:391) >> at hudson.ExtensionFinder$GuiceFinder.find(ExtensionFinder.java:382) >> at hudson.ExtensionFinder._find(ExtensionFinder.java:151) >> at >> hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:318) >> at hudson.ExtensionList.load(ExtensionList.java:295) >> at hudson.ExtensionList.ensureLoaded(ExtensionList.java:248) >> at hudson.ExtensionList.getComponents(ExtensionList.java:149) >> at hudson.DescriptorExtensionList.load(DescriptorExtensionList.java:182) >> at hudson.ExtensionList.ensureLoaded(ExtensionList.java:248) >> at hudson.ExtensionList.iterator(ExtensionList.java:138) >> at >> org.apache.commons.jelly.expression.ExpressionSupport.evaluateAsIterator(ExpressionSupport.java:101) >> at >> org.apache.commons.jelly.tags.core.ForEachTag.doTag(ForEachTag.java:89) >> at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:269) >> at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) >> at >> org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98) >> at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) >> at >> org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105) >> at >> org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119) >> at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) >> at >> org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105) >> at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:81) >> at >> org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63) >> at >> org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53) >> at >> org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:112) >> at >> org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127) >> at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:666) >> at org.kohsuke.stapler.Stapler.invoke(Stapler.java:770) >> at org.kohsuke.stapler.Stapler.invoke(Stapler.java:583) >> at org.kohsuke.stapler.Stapler.service(Stapler.java:214) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) >> at winstone.ServletConfiguration.execute(ServletConfiguration.java:248) >> at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) >> at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376) >> at >> hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95) >> at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87) >> at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) >> at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) >> at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) >> at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) >> at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) >> at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:162) >> at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) >> at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) >> at >> org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50) >> at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) >> at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) >> at >> hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) >> at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) >> at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) >> at winstone.RequestDispatcher.forward(RequestDispatcher.java:331) >> at >> winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227) >> at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) >> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) >> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) >> at java.util.concurrent.FutureTask.run(FutureTask.java:166) >> at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) >> at >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) >> at java.lang.Thread.run(Thread.java:722) >> Caused by: java.lang.NoClassDefFoundError: >> nectar/plugins/rbac/groups/ProxyGroupContainer >> at java.lang.ClassLoader.defineClass1(Native Method) >> at java.lang.ClassLoader.defineClass(ClassLoader.java:791) >> at >> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) >> at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) >> at java.net.URLClassLoader.access$100(URLClassLoader.java:71) >> at java.net.URLClassLoader$1.run(URLClassLoader.java:361) >> at java.net.URLClassLoader$1.run(URLClassLoader.java:355) >> at java.security.AccessController.doPrivileged(Native Method) >> at java.net.URLClassLoader.findClass(URLClassLoader.java:354) >> at java.lang.ClassLoader.loadClass(ClassLoader.java:423) >> at java.lang.ClassLoader.loadClass(ClassLoader.java:356) >> at java.lang.Class.getDeclaringClass(Native Method) >> at java.lang.Class.getEnclosingClass(Class.java:1105) >> at hudson.model.Descriptor.<init>(Descriptor.java:251) >> at >> com.cloudbees.hudson.plugins.folder.FolderPropertyDescriptor.<init>(FolderPropertyDescriptor.java:19) >> at >> com.cloudbees.hudson.plugins.folder.properties.FolderProxyGroupContainer$DescriptorImpl.<init>(FolderProxyGroupContainer.java:178) >> at >> com.cloudbees.hudson.plugins.folder.properties.FolderProxyGroupContainer$DescriptorImpl$$FastClassByGuice$$8b70b158.newInstance(<generated>) >> at >> com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40) >> at >> com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61) >> at >> com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:108) >> at >> com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:87) >> at >> com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:259) >> at >> com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46) >> at >> com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1018) >> at >> com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40) >> ... 65 more >> Caused by: java.lang.ClassNotFoundException: >> nectar.plugins.rbac.groups.ProxyGroupContainer >> at java.net.URLClassLoader$1.run(URLClassLoader.java:366) >> at java.net.URLClassLoader$1.run(URLClassLoader.java:355) >> at java.security.AccessController.doPrivileged(Native Method) >> at java.net.URLClassLoader.findClass(URLClassLoader.java:354) >> at java.lang.ClassLoader.loadClass(ClassLoader.java:423) >> at java.lang.ClassLoader.loadClass(ClassLoader.java:356) >> ... 90 more >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to jenkinsci-users+unsubscr...@googlegroups.com. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> >> > > -- > You received this message because you are subscribed to a topic in the > Google Groups "Jenkins Users" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/jenkinsci-users/ZgCdScIV7lM/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > jenkinsci-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.