gerrit集成gitweb:Error injecting constructor, java.io.IOException: Permission denied

使用gerrit账户在centos上安装gerrit,然后集成gitweb,gerrit服务启动失败,查看日志,报错信息如下:

[2015-05-15 05:03:42,671] ERROR com.google.gerrit.pgm.Daemon : Unable to start daemon
java.lang.IllegalStateException: Cannot start HTTP daemon
        at com.google.gerrit.pgm.http.jetty.JettyServer$Lifecycle.start(JettyServer.java:139)
        at com.google.gerrit.lifecycle.LifecycleManager.start(LifecycleManager.java:74)
        at com.google.gerrit.pgm.Daemon.start(Daemon.java:291)
        at com.google.gerrit.pgm.Daemon.run(Daemon.java:203)
        at com.google.gerrit.pgm.util.AbstractProgram.main(AbstractProgram.java:64)
        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: com.google.inject.ProvisionException: Unable to provision, see the following errors:

1) Error injecting constructor, java.io.IOException: Permission denied
  at com.google.gerrit.httpd.gitweb.GitWebServlet.<init>(GitWebServlet.java:99)
  at com.google.gerrit.httpd.gitweb.GitWebServlet.class(GitWebServlet.java:78)
  while locating com.google.gerrit.httpd.gitweb.GitWebServlet

1 error
        at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1018)
        at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1040)
        at com.google.inject.servlet.ServletDefinition.init(ServletDefinition.java:110)
        at com.google.inject.servlet.ManagedServletPipeline.init(ManagedServletPipeline.java:82)
        at com.google.inject.servlet.ManagedFilterPipeline.initPipeline(ManagedFilterPipeline.java:103)
        at com.google.inject.servlet.GuiceFilter.init(GuiceFilter.java:220)
        at org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:137)
        at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:831)
        at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:300)
        at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:744)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
        at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132)
        at org.eclipse.jetty.server.Server.start(Server.java:357)
        at org.eclipse.jetty.server.Server.doStart(Server.java:324)
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
        at com.google.gerrit.pgm.http.jetty.JettyServer$Lifecycle.start(JettyServer.java:125)
        ... 12 more
Caused by: java.io.IOException: Permission denied
        at java.io.UnixFileSystem.createFileExclusively(Native Method)
        at java.io.File.createTempFile(File.java:2001)
        at com.google.gerrit.httpd.gitweb.GitWebServlet.makeSiteConfig(GitWebServlet.java:149)
        at com.google.gerrit.httpd.gitweb.GitWebServlet.<init>(GitWebServlet.java:126)
        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:1066)
        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.InjectorImpl$2$1.call(InjectorImpl.java:1009)
        at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1059)
        at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1005)
        ... 29 more

gerrit的安装路径是/home/gerrit/gerrit_site,

查看gerrit_site的权限和属主,可能是之前的误操作,gerrit_site目录的属主不是gerrit:gerrit,而是777:gerrit。

执行命令:chown -R gerrit:gerrit gerrit_site

修改目录权限后,重启gerrit服务,正常运行。

over!

时间: 2024-07-28 16:24:24

gerrit集成gitweb:Error injecting constructor, java.io.IOException: Permission denied的相关文章

严重: Error in dependencyCheck java.io.IOException: invalid header field(tomcat启动成功可是訪问web项目404错误)

tomcat启动的时候出现 严重: Error in dependencyCheck java.io.IOException: invalid header field 而且tomcat也不自己主动reload 然后訪问在eclipse里面訪问web页面出现404,原来web程序一直没有被load进tomcat里面 原因:WebContent > META-INF > MANIFEST.MF文件不是多了几个空行就是多了几个空格,导致出现IO错误 解决的方法去掉空格和空行 重新启动tomcat

Caused by: java.io.IOException: 您的主机中的软件中止了一个已建立的连接。

异常详情 2017-07-16 10:55:26,218 ERROR [500.jsp] - java.io.IOException: 你的主机中的软件中止了一个已建立的连接. org.apache.catalina.connector.ClientAbortException: java.io.IOException: 你的主机中的软件中止了一个已建立的连接. at org.apache.catalina.connector.OutputBuffer.realWriteBytes(Output

tomcat启动报错:java.net.BindException: Permission denied &lt;null&gt;:80

1,启动报错显示 [org.springframework.web.servlet.DispatcherServlet]FrameworkServlet 'springMvc': initialization completed in 382 ms Jun 01, 2015 6:39:06 PM org.apache.coyote.http11.Http11Protocol start SEVERE: Error starting endpoint java.net.BindException:

Tomcat启动时报错:java.net.BindException: Permission denied &lt;null&gt;:80 【转载】

本文转载自: http://blog.sina.com.cn/s/blog_4550f3ca0101g37l.html 问题起因:做负载均衡时需要将Web工程与Wap工程同时部署在一台Suse服务器上,为方便日后维护,我们分别为Web工程与Wap工程分配了不同的用户进行部署,并且端口使用分别为8080与80,Web工程使用默认8080端口,Tomcat正常启动并能正常访问,Wap工程使用80端口(修改server.xml),Tomcat启动一系列错误(见问题描述). 问题描述:Tomcat启动时

解决hiveserver2报错:java.io.IOException: Job status not available - Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

用户使用的sql: select count( distinct patient_id ) from argus.table_aa000612_641cd8ce_ceff_4ea0_9b27_0a3a743f0fe3; 下面做不同的测试: 1.beeline -u jdbc:hive2://0.0.0.0:10000 -e "select count( distinct patient_id ) from argus.table_aa000612_641cd8ce_ceff_4ea0_9b27_

Android - Error: &quot;java.io.IOException: setDataSource failed.: status=0x80000000&quot;

Error: "java.io.IOException: setDataSource failed.: status=0x80000000" 本文地址: http://blog.csdn.net/caroline_wendy Android使用MediaPlayer类播放视频时, 报错, setDataSource错误; 即MediaPlayer无法设置数据源. 可能的原因: 访问网络数据源, 需要权限, 但在AndroidManifest中未添加网络权限; 解决方法: <use

解决Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource com/cqupt/paging/dao/User.xml

搭建了一个ssm项目,启动报错Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource com/cqupt/paging/dao/User.xml 我看了一下路径没错,名字也没有写错 网上找了一下资料解决了,记录一下 我用maven管理,在target下并没有将User.xml,出错原因就是maven编译时没有将xml文件放进去,所以才会找不到User.xml文件 解决方

解决Jmeter插件ERROR: java.io.IOException: Agent is unreachable via TCP的错误

在使用JMeter PerfMon Metrics collector插件收集收据的时候,收集不到数据同时报如下错误: 1 ERROR: java.io.IOException: Agent is unreachable via TCP 或者 1 ERROR: java.io.IOException: Agent is unreachable via UDP 这是用于默认的端口4444被占用,更换其他端口即可:例如将指定TCP为3401,UDP指定为3401 1 ./startAgent.sh 

解决Caused by: java.io.IOException: java.io.IOException: error=12, Cannot allocate memory

最近公司一台线上服务器的hbase的regionserver挂掉之后起不起来报错OOM. 这台机器同时装有cassandra,于是停掉cassandra释放内存,重启regionserver失败,同时cassandra再尝试启动也报错Caused by: java.io.IOException: java.io.IOException: error=12, Cannot allocate memory ps -ef发现有很多类似/bin/bash /opt/cloudera-manager/cm