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編碼格式。