2016-08-23 106 views
1

enter image description here自從最近幾周以來,我使用yii2框架。但是現在我正在和作曲家本身談一些問題。作曲家更新沒有依賴關係

只是爲了信息,我使用Ubuntu 14.04

當我需要一些新的軟件包/擴展,我做的作曲家用作曲家需要命令來添加。但我注意到,有時它會從我的供應商和項目中刪除幾個現有的軟件包。

我試着用下面的命令。

composer require dmstr/yii2-adminlte-asset "*" 

composer require 2amigos/yii2-file-upload-widget:~1.0 

而且還嘗試了一些使用谷歌搜索。

http://www.yiiframework.com/wiki/672/install-specific-yii2-vendor-extension-dependency-without-updating-other-packages/

但它不工作。

有沒有辦法在現有的yii 2項目中添加一個新的包/擴展名而不刪除現有的包或沒有任何作曲者更新命令?

Composer.json這個

{ 
    "name": "sganz/yii2-advanced-api-template", 
    "description": "Improved Yii 2 Advanced Application Template By Sandy Ganz, Original by Nenad Zivkovic", 
    "keywords": ["yii2", "framework", "advanced", "improved", "application template", "nenad", "sganz"], 
    "type": "project", 
    "license": "BSD-3-Clause", 
    "support": { 
     "tutorial": "http://www.freetuts.org/tutorial/view?id=6", 
     "source": "https://github.com/sganz/yii2-advanced-api-template.git" 
    }, 
    "minimum-stability": "dev", 
    "prefer-stable":true, 
    "require": { 
     "php": ">=5.4.0", 
     "yiisoft/yii2": "*", 
     "yiisoft/yii2-bootstrap": "*", 
     "yiisoft/yii2-swiftmailer": "*", 
     "nenad/yii2-password-strength": "*", 
     "mihaildev/yii2-ckeditor": "*", 
     "dmstr/yii2-adminlte-asset": "*" 
    }, 
    "require-dev": { 
     "yiisoft/yii2-codeception": "*", 
     "yiisoft/yii2-debug": "*", 
     "yiisoft/yii2-gii": "*", 
     "yiisoft/yii2-faker": "*", 
     "codeception/specify": "*", 
     "codeception/verify": "*" 
    }, 
    "config": { 
     "vendor-dir": "protected/vendor", 
     "process-timeout": 1800 
    }, 
    "extra": { 
     "asset-installer-paths": { 
      "npm-asset-library": "protected/vendor/npm", 
      "bower-asset-library": "protected/vendor/bower" 
     } 
    } 
} 

任何幫助將不勝感激。

+0

檢查'作曲家要求')。它也可能是被刪除的軟件包是被更新的另一個軟件包的子需求('composer require'自動運行'composer update')並且不再需要這個軟件包。 –

+0

@Peh我很久以前就開發了一個現有的大型項目,現在當我嘗試添加新的包時,它將刪除一些現有的包。 –

+0

好的,你可以編輯你的問題並顯示你的'composer.json'和一個被刪除的軟件包列表嗎? –

回答

2

嘗試

composer --no-update require dmstr/yii2-adminlte-asset:* 
0

爲了避免其他分機只是下面的步驟卸載。

1) "dmstr/yii2-adminlte-asset" : "2.*" 
2) "2amigos/yii2-file-upload-widget": "~1.0" 

添加到composer.json文件的require部分。

2) php composer.phar update 

在Cmd中運行此命令。

0
  1. 你的問題是,這些被刪除的包是不是在require也不在你composer.jsonrequire-dev部分。因此,我認爲已刪除的軟件包以前是(012)中的任何其他軟件包所需的,並且這些軟件包的較新版本中這個要求已被刪除。這應該是一個正常的行爲,對您的項目應該沒有問題!

  2. 由於@Bizley已經表現出可以添加的要求,而不更新舊的:

    如果您運行的是去除需要在你的`composer.json`包(前
    composer --no-update require dmstr/yii2-adminlte-asset:* 
    
相關問題