全新安装时 RocksDB 出现 arcanist 错误 (Mac OS X)
arcanist error with RocksDB on fresh install (Mac OS X)
我已经在 Mac OS X El Capitan (10.11.4) 上安装了一个全新的 arcanist 副本到 /usr/local/phabricator/arcanist
.
如果我首先 cd
进入 /usr/local/phabricator/arcanist
和 运行 bin/arc
或只是 arc
(因为我将 /usr/local/phabricator/arcanist/bin
添加到我的 PATH
) 然后一切都很好。但是,如果我尝试从系统上的 rocksdb 目录中 运行 arc lint
然后我总是会收到致命错误,输出如下所示:
$ arc lint --trace
ARGV '/usr/local/phabricator/arcanist/bin/../scripts/arcanist.php' 'lint' '--trace'
LOAD Loaded "phutil" from "/usr/local/phabricator/libphutil/src".
LOAD Loaded "arcanist" from "/usr/local/phabricator/arcanist/src".
Config: Did not find user configuration at "/Users/aretter/.arcrc".
Config: Did not find system configuration at "/etc/arcconfig".
Working Copy: Reading .arcconfig from "/Users/aretter/code/rocksdb/.arcconfig".
Working Copy: Path "/Users/aretter/code/rocksdb" is part of `git` working copy "/Users/aretter/code/rocksdb".
Working Copy: Project root is at "/Users/aretter/code/rocksdb".
Config: Did not find local configuration at "/Users/aretter/code/rocksdb/.git/arc/config".
Loading phutil library from '/Users/aretter/code/rocksdb/arcanist_util'...
[2016-06-14 09:31:17] EXCEPTION: (PhutilMissingSymbolException) Failed to load class or interface 'ArcanistBaseWorkflow': the class or interface 'ArcanistBaseWorkflow' is not defined in the library map for any loaded phutil library.
If you are not a developer, this almost always means that a library is out of date. For example, you may have upgraded `phabricator` without upgrading `libphutil`, or vice versa. It might also mean that you need to restart Apache or PHP-FPM. Make sure all libraries are up to date and all services have been restarted.
If you are a developer and this symbol was recently added or moved, your library map may need to be rebuilt. You can rebuild the map by running 'arc liberate'. For more information, see:
https://secure.phabricator.com/book/phabcontrib/article/adding_new_classes/ at [<phutil>/src/__phutil_library_init__.php:25]
arcanist(head=master, ref.master=c13e5a629535), arcanist_util(head=java-wb-save-restore-points, ref.master=fda098461b3f, ref.java-wb-save-restore-points=dd6d2e75d836), phutil(head=master, ref.master=fb1e159d3640)
#0 __phutil_autoload(string)
#1 spl_autoload_call(string) called at [<arcanist_util>/config/FacebookArcanistConfiguration.php:7]
#2 include_once(string) called at [<phutil>/src/moduleutils/PhutilBootloader.php:226]
#3 PhutilBootloader::executeInclude(string) called at [<phutil>/src/moduleutils/PhutilBootloader.php:216]
#4 PhutilBootloader::loadLibrarySource(string, string) called at [<phutil>/src/symbols/PhutilSymbolLoader.php:381]
#5 PhutilSymbolLoader::loadSymbol(array) called at [<phutil>/src/symbols/PhutilSymbolLoader.php:256]
#6 PhutilSymbolLoader::selectAndLoadSymbols() called at [<phutil>/src/__phutil_library_init__.php:22]
#7 __phutil_autoload(string)
#8 spl_autoload_call(string) called at [<arcanist>/scripts/arcanist.php:186]
请注意,我已尝试重新安装它并 运行 宁 arc liberate
,但都没有解决问题。
谁能告诉我我的系统出了什么问题?
我还与 Git 确认我的奥术师确实是正确的并且是最新的:
$ cd /usr/local/phabricator/arcanist
$ git remote -v
origin github.com/phacility/arcanist.git (fetch)
origin github.com/phacility/arcanist.git (push)
$ git status
On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working directory clean
$ git pull
Already up-to-date.
我也试过通过这种机制重新安装:
$ cd /usr/local/phabricator
$ rm -rf arcanist libphutil
$ git clone https://github.com/phacility/libphutil.git
$ git clone https://github.com/phacility/arcanist.git
arcanist_util(head=java-wb-save-restore-points, ref.master=fda098461b3f, ref.java-wb-save-restore-points=dd6d2e75d836)
从源头上看,这对我来说不像是 arcanist 的新副本,至少上游不对 "arcanist_util" 负责。你从哪里弄来的?我会删除它,然后直接从 GitHub 拉取。 http://github.com/phacility/arcanist
我已经在 Mac OS X El Capitan (10.11.4) 上安装了一个全新的 arcanist 副本到 /usr/local/phabricator/arcanist
.
如果我首先 cd
进入 /usr/local/phabricator/arcanist
和 运行 bin/arc
或只是 arc
(因为我将 /usr/local/phabricator/arcanist/bin
添加到我的 PATH
) 然后一切都很好。但是,如果我尝试从系统上的 rocksdb 目录中 运行 arc lint
然后我总是会收到致命错误,输出如下所示:
$ arc lint --trace
ARGV '/usr/local/phabricator/arcanist/bin/../scripts/arcanist.php' 'lint' '--trace'
LOAD Loaded "phutil" from "/usr/local/phabricator/libphutil/src".
LOAD Loaded "arcanist" from "/usr/local/phabricator/arcanist/src".
Config: Did not find user configuration at "/Users/aretter/.arcrc".
Config: Did not find system configuration at "/etc/arcconfig".
Working Copy: Reading .arcconfig from "/Users/aretter/code/rocksdb/.arcconfig".
Working Copy: Path "/Users/aretter/code/rocksdb" is part of `git` working copy "/Users/aretter/code/rocksdb".
Working Copy: Project root is at "/Users/aretter/code/rocksdb".
Config: Did not find local configuration at "/Users/aretter/code/rocksdb/.git/arc/config".
Loading phutil library from '/Users/aretter/code/rocksdb/arcanist_util'...
[2016-06-14 09:31:17] EXCEPTION: (PhutilMissingSymbolException) Failed to load class or interface 'ArcanistBaseWorkflow': the class or interface 'ArcanistBaseWorkflow' is not defined in the library map for any loaded phutil library.
If you are not a developer, this almost always means that a library is out of date. For example, you may have upgraded `phabricator` without upgrading `libphutil`, or vice versa. It might also mean that you need to restart Apache or PHP-FPM. Make sure all libraries are up to date and all services have been restarted.
If you are a developer and this symbol was recently added or moved, your library map may need to be rebuilt. You can rebuild the map by running 'arc liberate'. For more information, see:
https://secure.phabricator.com/book/phabcontrib/article/adding_new_classes/ at [<phutil>/src/__phutil_library_init__.php:25]
arcanist(head=master, ref.master=c13e5a629535), arcanist_util(head=java-wb-save-restore-points, ref.master=fda098461b3f, ref.java-wb-save-restore-points=dd6d2e75d836), phutil(head=master, ref.master=fb1e159d3640)
#0 __phutil_autoload(string)
#1 spl_autoload_call(string) called at [<arcanist_util>/config/FacebookArcanistConfiguration.php:7]
#2 include_once(string) called at [<phutil>/src/moduleutils/PhutilBootloader.php:226]
#3 PhutilBootloader::executeInclude(string) called at [<phutil>/src/moduleutils/PhutilBootloader.php:216]
#4 PhutilBootloader::loadLibrarySource(string, string) called at [<phutil>/src/symbols/PhutilSymbolLoader.php:381]
#5 PhutilSymbolLoader::loadSymbol(array) called at [<phutil>/src/symbols/PhutilSymbolLoader.php:256]
#6 PhutilSymbolLoader::selectAndLoadSymbols() called at [<phutil>/src/__phutil_library_init__.php:22]
#7 __phutil_autoload(string)
#8 spl_autoload_call(string) called at [<arcanist>/scripts/arcanist.php:186]
请注意,我已尝试重新安装它并 运行 宁 arc liberate
,但都没有解决问题。
谁能告诉我我的系统出了什么问题?
我还与 Git 确认我的奥术师确实是正确的并且是最新的:
$ cd /usr/local/phabricator/arcanist
$ git remote -v
origin github.com/phacility/arcanist.git (fetch)
origin github.com/phacility/arcanist.git (push)
$ git status
On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working directory clean
$ git pull
Already up-to-date.
我也试过通过这种机制重新安装:
$ cd /usr/local/phabricator
$ rm -rf arcanist libphutil
$ git clone https://github.com/phacility/libphutil.git
$ git clone https://github.com/phacility/arcanist.git
arcanist_util(head=java-wb-save-restore-points, ref.master=fda098461b3f, ref.java-wb-save-restore-points=dd6d2e75d836)
从源头上看,这对我来说不像是 arcanist 的新副本,至少上游不对 "arcanist_util" 负责。你从哪里弄来的?我会删除它,然后直接从 GitHub 拉取。 http://github.com/phacility/arcanist