W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
每個(gè)框架都可能有一個(gè)或多個(gè)不同的依賴包安裝目錄。Composer 可以通過(guò)使用 composer/installers 來(lái)配置,安裝依賴到其它的目錄,而不是默認(rèn)的 vendor
目錄。
如果你是一個(gè) 包作者 并且希望自己的資源包被安裝到自定義的目錄中,簡(jiǎn)單的 require composer/installers
依賴,并設(shè)置適當(dāng)?shù)?type
屬性。這是常見(jiàn)的方式,如果你的資源包專門用于一個(gè)框架,如 CakePHP、Drupal 或 WordPress。這是一個(gè) WordPress 主題的 composer.json 文件的例子:
{
"name": "you/themename",
"type": "wordpress-theme",
"require": {
"composer/installers": "~1.0"
}
}
現(xiàn)在當(dāng)你用 Composer 安裝這個(gè)主題時(shí),它就會(huì)被放置在 wp-content/themes/themename/
目錄。目前已被支持的 type
類型請(qǐng)查看 current supported types。
對(duì)于一個(gè) 包使用者 你可以為一個(gè)包設(shè)置或覆蓋安裝路徑,requires composer/installers 并在 extra 下設(shè)置 installer-paths
屬性。Drupal 的多站點(diǎn)設(shè)置就是一個(gè)很好的例子,其中的資源包應(yīng)該被安裝到各自網(wǎng)站的子目錄。在這里我們使用 composer/installers 來(lái)覆蓋安裝路徑:
{
"extra": {
"installer-paths": {
"sites/example.com/modules/{$name}": ["vendor/package"]
}
}
}
現(xiàn)在該資源包將被安裝到你指定的目錄,并替換 $name
變量,而不是默認(rèn)目錄。
注意: 你不能通過(guò)它改變所有包的安裝目錄。這僅適用于引入
composer/installers
依賴,自定義了 type 屬性的資源包。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: