我正试图按照这手册将Gerrit与Github集成起来。它编译成功,稍后我可以命令Gerrit:
java -jar gerrit-2.9.1.war init 但是,在我尝试启动Gerrit服务器之后,它失败了,日志中出现了以下错误:
[2014-11-27 14:06:36,723] ERROR com.google.gerrit.pgm.http.jetty.JettyServer : Unable to instantiate front-end HTTP Filter com.googlesource.gerrit.plugins.github.oauth.OAuthFilter
java.lang.ClassNotFoundException: com.googlesource.gerrit.plugins.github.oauth.OAuthFilter
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:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:191)
at com.google.gerrit.pgm.http.jetty.JettyServer.makeContext(JettyServer.java:425)
at com.google.gerrit.pgm.http.jetty.JettyServer.makeContext(JettyServer.java:378)
at com.google.gerrit.pgm.http.jetty.JettyServer.<init>(JettyServer.java:167)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at com.google.inject.internal.DefaultConstructionProxyFactory$2.newInstance(DefaultConstructionProxyFactory.java:86)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:108)
at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:88)
at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:269)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1058)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.Scopes$1$1.get(Scopes.java:65)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205)
at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1051)
at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199)
at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180)
at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
at com.google.inject.internal.InjectorImpl.createChildInjector(InjectorImpl.java:230)
at com.google.gerrit.pgm.Daemon.createHttpdInjector(Daemon.java:438)
at com.google.gerrit.pgm.Daemon.initHttpd(Daemon.java:403)
at com.google.gerrit.pgm.Daemon.start(Daemon.java:286)
at com.google.gerrit.pgm.Daemon.run(Daemon.java:201)
at com.google.gerrit.pgm.util.AbstractProgram.main(AbstractProgram.java:63)
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:606)
at com.google.gerrit.launcher.GerritLauncher.invokeProgram(GerritLauncher.java:166)
at com.google.gerrit.launcher.GerritLauncher.mainImpl(GerritLauncher.java:93)
at com.google.gerrit.launcher.GerritLauncher.main(GerritLauncher.java:50)
at Main.main(Main.java:25)
[2014-11-27 14:06:36,762] ERROR com.google.gerrit.pgm.Daemon : Unable to start daemon
com.google.inject.CreationException: Guice creation errors:
1) Error injecting constructor, java.lang.IllegalArgumentException: Unable to instantiate front-end HTTP Filter com.googlesource.gerrit.plugins.github.oauth.OAuthFilter
at com.google.gerrit.pgm.http.jetty.JettyServer.<init>(JettyServer.java:161)
at com.google.gerrit.pgm.http.jetty.JettyModule.configure(JettyModule.java:29)
while locating com.google.gerrit.pgm.http.jetty.JettyServer
1 error
at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:448)
at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:184)
at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110)
at com.google.inject.internal.InjectorImpl.createChildInjector(InjectorImpl.java:230)
at com.google.gerrit.pgm.Daemon.createHttpdInjector(Daemon.java:438)
at com.google.gerrit.pgm.Daemon.initHttpd(Daemon.java:403)
at com.google.gerrit.pgm.Daemon.start(Daemon.java:286)
at com.google.gerrit.pgm.Daemon.run(Daemon.java:201)
at com.google.gerrit.pgm.util.AbstractProgram.main(AbstractProgram.java:63)
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:606)
at com.google.gerrit.launcher.GerritLauncher.invokeProgram(GerritLauncher.java:166)
at com.google.gerrit.launcher.GerritLauncher.mainImpl(GerritLauncher.java:93)
at com.google.gerrit.launcher.GerritLauncher.main(GerritLauncher.java:50)
at Main.main(Main.java:25)
Caused by: java.lang.IllegalArgumentException: Unable to instantiate front-end HTTP Filter com.googlesource.gerrit.plugins.github.oauth.OAuthFilter
at com.google.gerrit.pgm.http.jetty.JettyServer.makeContext(JettyServer.java:434)
at com.google.gerrit.pgm.http.jetty.JettyServer.makeContext(JettyServer.java:378)
at com.google.gerrit.pgm.http.jetty.JettyServer.<init>(JettyServer.java:167)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at com.google.inject.internal.DefaultConstructionProxyFactory$2.newInstance(DefaultConstructionProxyFactory.java:86)
at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:108)
at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:88)
at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:269)
at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1058)
at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
at com.google.inject.Scopes$1$1.get(Scopes.java:65)
at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205)
at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199)
at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1051)
at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199)
at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180)
... 15 more
Caused by: java.lang.ClassNotFoundException: com.googlesource.gerrit.plugins.github.oauth.OAuthFilter
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:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:191)
at com.google.gerrit.pgm.http.jetty.JettyServer.makeContext(JettyServer.java:425)
... 35 more我尝试了2.10快照和2.9版本的插件,它们显示了这个错误。我如何开始Gerrit (尝试2.9.1)?
发布于 2015-04-27 08:58:18
这个错误很愚蠢。您必须将github-oauth-2.11.jar复制到libs目录,而不是插件。必须仔细阅读https://gerrit.googlesource.com/plugins/github/。
发布于 2015-02-06 14:02:47
从这里开始使用预构建的二进制文件,如果没有找到任何解决方案,只需使用https://ci.gerritforge.com/job/Gerrit-master-github/
https://stackoverflow.com/questions/27177793
复制相似问题