我正试图在我的Laravel项目中使用PHPDoc,但我在编写它时遇到了一些困难。我运行composer require phpdocumentor/phpdocumentor并接收以下信息:
Problem 1
- Installation request for phpdocumentor/phpdocumentor ^2.9 -> satisfiable by phpdocumentor/phpdocumentor[v2.9.0].
- Conclusion: remove nikic/php-parser v3.1.1
- Conclusion: don't install nikic/php-parser v3.1.1
- phpdocumentor/phpdocumentor v2.9.0 requires phpdocumentor/reflection ^3.0 -> satisfiable by phpdocumentor/reflection[3.0.0, 3.0.1].
- phpdocumentor/reflection 3.0.0 requires nikic/php-parser ^1.0 -> satisfiable by nikic/php-parser[v1.0.0, v1.0.1, v1.0.2, v1.1.0, v1.2.0, v1.2.1, v1.2.2, v1.3.0, v1.4.0, v1.4.1].
- phpdocumentor/reflection 3.0.1 requires nikic/php-parser ^1.0 -> satisfiable by nikic/php-parser[v1.0.0, v1.0.1, v1.0.2, v1.1.0, v1.2.0, v1.2.1, v1.2.2, v1.3.0, v1.4.0, v1.4.1].
- Can only install one of: nikic/php-parser[v1.3.0, v3.1.1].
- Can only install one of: nikic/php-parser[v1.4.0, v3.1.1].
- Can only install one of: nikic/php-parser[v1.4.1, v3.1.1].
- Can only install one of: nikic/php-parser[v1.0.0, v3.1.1].
- Can only install one of: nikic/php-parser[v1.0.1, v3.1.1].
- Can only install one of: nikic/php-parser[v1.0.2, v3.1.1].
- Can only install one of: nikic/php-parser[v1.1.0, v3.1.1].
- Can only install one of: nikic/php-parser[v1.2.0, v3.1.1].
- Can only install one of: nikic/php-parser[v1.2.1, v3.1.1].
- Can only install one of: nikic/php-parser[v1.2.2, v3.1.1].
- Installation request for nikic/php-parser (locked at v3.1.1) -> satisfiable by nikic/php-parser[v3.1.1].据称,运行composer update phpdocumentor/phpdocumentor nikic/php-parser应该会使nikic/php解析器降到phpdoc所需的版本,但由于phpdoc尚未安装,所以不能工作。
我走进了我的供应商/ dir,找到了需要nikic/php-parser的nikic/php-parser,把它注释掉了,composer updatedcomposer installd,以便phpdocumentor可以要求它,但是没有这样的运气。
你有什么建议?如何让PHPDoc进入我的项目?对不起,如果我是个傻瓜!
谢谢!
发布于 2017-09-21 11:32:41
不是傻瓜..。
此输出表明phpdocumentor/reflection特别知道它需要较旧的nikic/php解析器版本,并且不能使用可能是laravel最低限度的更新版本。因此,composer通过对更新说“不”来保护自己。
我认为这里最简单的解决方法是下载PHAR二进制文件1,并将其放入./ say /bin中。这样,它就与您通常拥有的可执行文件位于同一个位置(./phpdoc/bin/phpdoc)。如果您使用的是Unix变体,则可以将PHAR符号链接起来,这样您就可以以同样的方式调用它。
1- http://phpdoc.org/phpDocumentor.phar
https://stackoverflow.com/questions/46339362
复制相似问题