Good to know. Thanks for the interesting story about your dev process!
On Jul 3, 2013 7:20 AM, "Stephen Connolly" <[email protected]>
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 <[email protected]> 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 [email protected].
>> 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
> [email protected].
> 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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to