以yii2为例

打包文件过程比较简单,但打包好以后简单测试yii命令,一直报错:

PHP Fatal error: Uncaught yii\base\InvalidParamException: The directory does not exist: phar:///Users/jimmy/PHP/Library/yii2-advanced/yii2.phar/console in phar:///Users/jimmy/PHP/Library/yii2-advanced/yii2.phar/base/Module.php:224

一开始一直以为是打包出了问题有文件没有被打包进去,换了各种姿势去打包,还是报各种错。

最后没办法的情况下,去看了报错的这个文件,发现用了realpath来判断路径是否存在,注释掉后,基本正常。这是php一个bug。

/**
* Sets the root directory of the module.
* This method can only be invoked at the beginning of the constructor.
* @param string $path the root directory of the module. This can be either a directory name or a path alias.
* @throws InvalidParamException if the directory does not exist.
*/
public function setBasePath($path)
{
$path = Yii::getAlias($path);
$p = $path;//realpath();
if ($p !== false && is_dir($p)) {
$this->_basePath = $p;
} else {
throw new InvalidParamException("The directory does not exist: $path");
}
}

http://git.oschina.net/web3d/codes/zyhsoev0b3i9u5njgaf42

最新文章

  1. SQL Server-聚焦UNIOL ALL/UNION查询(二十三)
  2. 如何使用Linux命令行查看Linux服务器内存使用情况?
  3. 在SqlServer2008R2中,根据分隔符把一列的值切割成多列
  4. tomcat在linux中启动慢的解决方案
  5. CentOS7新特性
  6. 纯JavaScripst的全选、全不选、反选 【转】
  7. Linux命令全集
  8. 删:Centos 7安装Nginx 1.8
  9. NPOI读写Excel0307
  10. Spring 学习笔记02
  11. apicloud教程
  12. 【原创】大叔经验分享(50)hue访问mysql(librdbms)
  13. Mysql出现(10061)错误提示的暴力解决办法
  14. MYSQL事务隔离级别详解附加实验
  15. 查看MySQL版本的命令及常用命令
  16. submit form to convert to a Java Bean model.
  17. 普通new和placement new的重载
  18. php + ajax 避免重复提交
  19. php输出大段代码(含变量和方法)
  20. BZOJ2600_ricehub_KEY

热门文章

  1. 06- Shell脚本学习--其它
  2. [Java面试七]Mybatis总结以及在面试中的一些问题.
  3. [javaweb]Java过滤器与包装设计模式的实用案例.
  4. ftp下载目录下所有文件及文件夹内(递归)
  5. 让AngularJS的$http 服务像jQuery.ajax()一样工作
  6. 快速入门系列--WebAPI--04在老版本MVC4下的调整
  7. 快速入门系列--MySQL
  8. javascript技术大全
  9. JS中的匿名函数
  10. SQL Pass北京举行2014年第一次线下活动