2013-07-22 68 views
0

如果所有依賴項都支持,更新到Symfony 2.3很容易。我從Packagist使用的依賴項之一表示它的要求是Symfony < 2.3。因此,我無法安裝該庫。強制使用Symfony安裝舊依賴項

這個庫有點舊了,我知道有一個或兩個問題,但是,我希望我仍然可以用作曲家來安裝它。

即使包裝師說< 2.3,我如何強制作曲家安裝庫開發人員?

+0

你有一個鏈接到包? – cheesemacfly

+0

@cheesemacfly https://packagist.org/packages/nicodmf/highlight-bundle 我想我可以安裝git倉庫而不是packagist倉庫。 – jsgoupil

+1

我看到了兩種解決方法:直接嘗試使用git存儲庫的捆綁包,並查看它是否適用於Symfony 2.3。如果是,請自行打包。或者詢問擁有者是否計劃更新。我很遺憾不知道任何簡單的其他解決方案:/ – cheesemacfly

回答

1

你可以叉它在github上,改變composer.json到你的捆綁設置:

"symfony/symfony": "2.3.*", 

,並添加叉子在項目庫composer.json:

"repositories": [ 
    { 
     "type": "package", 
     "package": { 
      "name": "youralias/highlight-bundle", 
      "version": "dev-master", 
      "source": { 
       "url": "https://github.com/youralias/HighlightBundle", 
       "type": "git", 
       "reference": "origin/master" 
      }, 
      "target-dir": "Highlight" 
     } 
    } 

當你需要時,這將採取你的叉子而不是原來的:nicodmf/highlight-bundle

至於PSR-0

"autoload": { 
    "psr-0": { 
     "": "src/", 
     "Highlight\\": "vendor/youralias/highlight-bundle" 
    } 
}, 

並要求:

"require": [ 
    ..., 
    "youralias/highlight-bundle": "dev-master" 
] 

正如cheesemacfly說: 「如果它與Symfony的2.3作品」

+0

這就是我現在要做的,謝謝你的回答......我出於某種原因在自動裝載機上遇到了一些麻煩。我很快就會在這裏回覆 – jsgoupil

+0

我終於明白了,autoload並沒有踢進去。一旦我拿到了,我需要添加一個target-dir。 我使用的類型是:「package」 – jsgoupil