我想在/ var / opengrok / src以外的目录中使用opengrok源代码。我将OPENGROK_INSTANCE_BASE环境变量设置为我想要的目录。 (为了确保测试,我在Opengrok脚本中对该变量进行了硬编码。)我在所需目录中创建了src / data / etc /文件夹。在这些之后我发出sudo ./OpenGrok index commnad。现在从网络浏览器我可以看到项目列表中的源代码,但是当我搜索时,我看到以下错误
*出现错误!
配置中指定的源根目录不指向有效目录!请配置您的webapp。 配置的dataRoot'/ home / xxnikosr / opengrok / data'指的是一个无目的或不可读的目录!*
我检查permision到/ data文件夹是否正确并且确实存在。有人面临同样的问题吗?我错过了任何配置吗? PS我在创建src / data / etc /目录之前完成了Opengrok的部署
答案 0 :(得分:0)
似乎即使您将OPENGROK_INSTANCE_BASE设置为/ var / opengrok以外的其他内容,opengrok仍会继续从/ var / opengrok / etc中读取配置信息。
(更令人困惑的是,在创建索引时,配置被正确写入$ OPENGROK_INSTANCE_BASE / etc。使用opengrok 0.12.1在Ubuntu 14.4上测试。我认为这是一个错误。)
解决这个问题的最简单方法是使用默认的/ var / opengrok作为实例库,或者创建一个链接/ var / opengrok / etc - > $ OPENGROK_INSTANCE_BASE /等。这对我有用。
如果你想要一个更好的解决方案,必须改变/ var / opengrok的路径 - 似乎是在webapp xml中硬连线。有关详细信息,请参阅:https://github.com/OpenGrok/OpenGrok/wiki/How-to-install-OpenGrok#optional-need-to-change-web-application-properties-or-name
..托马斯