vendor目录
Ⅰ 安卓vendor目录下lib库有源码吗
您好,这个要看硬件上一样不一样了,不是看手机系统版本的。
Ⅱ 手机根目录中的vendor是干什么的
供应商,手机制造商的资料和证件。一般正品手机里都会有,用来证明手机是正品,一般是没有办法删除,就算可以删除,也会自动恢复。
Ⅲ composer的autoload只能自动加载vendor目录下的文件吗
使用composer,你需要有一个composer.json文件,此文件的作用主要用来声明包之间的相互关系和其他的一些元素标签。
require 关键字
第一件事情在composer.json就是使用require关键字了,你将告诉composer哪些包是你项目所需要的
{
"require": {
"monolog/monolog": "1.0.*"
}
}
如你所见,require的对象将会映射包的名称( monolog/monolog)和包的版本是1.0.*
包的命名
基本上包的命名是 主名/项目名称( monolog/monolog),主名必须唯一,但是项目也就是我们的包的名称可以有相同的,例如: igorw/json,和seldaek/json
包的版本
我们需要使用monolog的版本是1.0.*,他的意思是只要版本是1.0分支即可,例如1.0.0,1.0.2或者1.0.99
版本定义的两种方式:
标准的版本:定义保准的版本包文件,如:1.0.2
一定范围的版本:使用比较符号来定义有效的版本的范围,有效的符号有>, >=, <,<=, !=
通配符:特别的匹配符号*,例如1.0.*就相当于>=1.0,<1.1版本的即可
下一个重要的版本:~符号最好的解释就是,~1.2就相当于>1.2,=1.2.3,<1.3版本。
安装包
在项目文件路径下运行
$ composer install
这样子他会自动下载monolog/monolog文件到你的vendor目录下面。
接下来需要说明一件事情就是
composer.lock - 锁定文件
在安装完所有需要的包之后,composer会生成一张标准的包版本的文件在composer.lock文件中。这将锁定所有包的版本。
使用composer.lock(当然是和composer.json一起)来控制你的项目的版本
这一点非常的重要,我们使用install命令来处理的时候,它首先会判断composer.lock文件是否存在,如果存在,将会下载相对应的版本(不会在于composer.json里面的配置),这意味着任何下载项目的人都将会得到一样的版本。
如果不存在composer.lock,composer将会通过composer.json来读取需要的包和相对的版本,然后创建composer.lock文件
这样子就可以在你的包有新的版本之后,你不会自动更新了,升级到新的版本,使用update命令即可,这样子就能获取最新版本的包并且也更新了你的composer.lock文件。
$ php composer.phar update
或者
$ composer update
Packagist(这应该就是composer,感觉有点像python的包,虽然没那么强大,呵呵,有了这种标准以后,以后大家开发网站绝对会很轻松,可以借鉴很多人的代码了,并且更加方便了!)
Packagist是composer的主要仓库,大家可以去看看,composer仓库的基础是包的源码,你可以随意的获取,Packagist的目的建成一个任何人都可以使用的仓库,这就意味着在你的文件中任意的require包了。
关于自动加载
为了方便的加载包文件,Composer自动生成了一个文件 vendor/autoload.php,你可以方便只有的使用它在任何你需要使用的地方
require 'vendor/autoload.php';
这意味着你可以非常非常方便的使用第三方代码了,假设你的项目需要使用monlog,你直接使用吧,他们都已经自动加载了的!
$log = new Monolog\Logger('name');
$log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING));
$log->addWarning('Foo');
当然你也可以在composer.json中加载自己的代码:
{
"autoload": {
"psr-0": {"Acme": "src/"}
}
}
composer将会把psr-0注册为Acme的命名空间
你可以定义一个映射通过命名空间到文件目录,src目录是你的根目录,vendor是同一级别的目录,例如一个文件为:src/Acme/Foo.php就包含了Acme\Foo类
当你在增加autoload之后,你必须要重新install来生成vendor/autoload.php文件
在我们引用此文件的时候,将会返回一个autoloader类的实力,所以你可以把返回的值放入一个变量,然后在增加更多的命名空间,如果在开发环境下这是非常方便的,例如:
$loader = require 'vendor/autoload.php';
$loader->add('Acme\Test', __DIR__);
Ⅳ 我应该提交 vendor 目录中的依赖包吗
根目录/app/http/Controllers
laravel目录结构:
注:写本文时参照的是5.1.4版本
目录或文件 说明
|–app 包含Controller、Model、路由等在内的应用目录,大部分业务将在该目录下进行
||–Console 命令行程序目录
|||–Commands 包含了用于命令行执行的类,可在该目录下自定义类
|||–Kernel.php 命令调用内核文件,包含commands变量(命令清单,自定义的命令需加入到这里)和schele方法(用于任务调度,即定时任务)
||–Events 事件目录
||–Exceptions 包含了自定义错误和异常处理类
||–Http HTTP传输层相关的类目录
|||–Controllers 控制器目录
|||–Kernel.php 包含http中间件和路由中间件的内核文件
|||–Middleware 中间件目录
|||–Requests 请求类目录
|||–routes.php 强大的路由
||–Jobs 该目录下包含队列的任务类
||–Listeners 监听器目录
||–Providers 服务提供者目录
||–User.php 自带的模型实例,我们新建的Model默认也存储在该目录
|–artisan 强大的命令行接口,你可以在app/Console/Commands下编写自定义命令
|–bootstrap 框架启动载入目录
||–app.php 创建框架应用实例
||–autoload.php 自动加载
||–cache 存放框架启动缓存,web服务器需要有该目录的写入权限
|–composer.json 存放依赖关系的文件
|–composer.lock 锁文件,存放安装时依赖包的真实版本
|–config 各种配置文件的目录
||–app.php 系统级配置文件
||–auth.php 用户身份认证配置文件,指定好table和model就可以很方便地用身份认证功能了
||–broadcasting.php 事件广播配置文件
||–cache.php 缓存配置文件
||–compile.php 编译额外文件和类需要的配置文件,一般用户很少用到
||–database.php 数据库配置文件
||–filesystems.php 文件系统配置文件,这里可以配置云存储参数
||–mail.php 电子邮件配置文件
||–queue.php 消息队列配置文件
||–services.php 可存放第三方服务的配置信息
||–session.php 配置session的存储方式、生命周期等信息
||–view.php 模板文件配置文件,包含模板目录和编译目录等
|–database 数据库相关目录
||–factories 5.1版本的新特性,工厂类目录,也是用于数据填充
|||–ModelFactory.php 在该文件可定义不同Model所需填充的数据类型
||–migrations 存储数据库迁移文件
||–seeds 存放数据填充类的目录
||–DatabaseSeeder.php 执行php artisan db:seed命令将会调用该类的run方法。该方法可调用执行该目录下其他Seeder类,也可调用factories方法生成ModelFactory里定义的数据模型
|–.env 环境配置文件。config目录下的配置文件会使用该文件里面的参数,不同生产环境使用不同的.env文件即可。
|–gulpfile.js gulp(一种前端构建工具)配置文件
|–package.json gulp配置文件
|–phpspec.yml phpspec(一种PHP测试框架)配置文件
|–phpunit.xml phpunit(一种PHP测试框架)配置文件
|–public 网站入口,应当将ip或域名指向该目录而不是根目录。可供外部访问的css、js和图片等资源皆放置于此
||–index.php 入口文件
||–.htaccess Apache服务器用该文件重写URL
||–web.config IIS服务器用该文件重写URL
|–resources 资源文件目录
||–assets 可存放包含LESS、SASS、CoffeeScript在内的原始资源文件
||–lang 本地化文件目录
||–views 视图文件就放在这啦
|–server.php PHP内置的Web服务器将把这个文件作为入口。以public/index.php为入口的可以忽略掉该文件
|–storage 存储目录。web服务器需要有该目录及所有子目录的写入权限
||–app 可用于存储应用程序所需的一些文件?待补充
||–framework 该目录下包括缓存、sessions和编译后的视图文件
||–logs 日志目录
|–tests 测试目录
|–vendor 该目录下包含Laravel源代码和第三方依赖包
Ⅳ 大家指定用composer update 怎么能安装扩展到自己指定的目录吗 例如 Vendor/Library/Org
在composer.json中定义:
"config": {
"vendor-dir": "xxxxx"
}
Ⅵ system\vendor\app 和 vendor\app 两个目录区别
system\vendor\app真实路径vendor\app 链接挂载上面的路径,类似sdcard/ 挂载SD卡,方便快捷。
Ⅶ android vendor目录下app怎么调用setting目录activity
第三方类库扩展目录Extend/Vendor目录 如果你直接使用的是第三方的类库包,或者是类名和后缀和ThinkPHP的默认规则不符合的,我们建议你放到第三方类库扩展目录Extend/Vendor目录下面,并使用vendor方法来导入。 例如,我们把Zend的Filter\Dir.php 放到Vendor目录下面,这个时候Dir文件的路径就是 Vendor\Zend\Filter\Dir.php,我们使用vendor方法导入就是: Vendor('Zend.Filter.Dir'); 需要注意的是,vendor方法默认导入的类库后缀是php的而不是class.php的,如果你的第三方类库的后缀是class.php,可以使用: Vendor('Zend.Filter.Dir','','.class.php'); 或者使用: import('Zend.Filter.Dir',VENDOR_PATH); 通过使用第三方类库扩展,我们可以直接使用Zend、CI或者其他框架中的类库。
Ⅷ android vendor目录怎么添加驱动hal
按照给定的字符集存储文件时,在文件的最开头的三个字节中就有可能存储着编码信息,所以,基本的原理就是只要读出文件前三个字节,判定这些字节的值,就可以得知其编码的格式。
其实,如果项目运行的平台就是中文操作系统,
如果这些文本文件在项目内产生,即开发人员可以控制文本的编码格式,
只要判定两种常见的编码就可以了:GBK和UTF-8。
由于中文Windows默认的编码是GBK,所以一般只要判定UTF-8编码格式。