Php 如何删除未随Composer一起安装的软件包?

Php 如何删除未随Composer一起安装的软件包?,php,composer-php,Php,Composer Php,我已更新了我的开发环境的软件包,其中列出了一些软件包,但尚未安装 例如,我想删除条令包,但如果我使用此命令: php /usr/local/bin/composer remove vendor/doctrine php /usr/local/bin/composer update 我得到了这个信息: 如何删除此软件包 编辑I: 我想解释一下最初安装的软件包以及我们做了什么 最初安装的软件包包括: 我想添加phpunit包,因此我修改了我的composer.json: "require

我已更新了我的开发环境的软件包,其中列出了一些软件包,但尚未安装

例如,我想删除条令包,但如果我使用此命令:

php /usr/local/bin/composer remove vendor/doctrine
php /usr/local/bin/composer update 
我得到了这个信息:

如何删除此软件包

编辑I:

我想解释一下最初安装的软件包以及我们做了什么

最初安装的软件包包括:

我想添加phpunit包,因此我修改了我的composer.json:

"require-dev":{
    "phpunit/phpunit": "6.*"
},
保存composer.json并执行以下命令:

php /usr/local/bin/composer remove vendor/doctrine
php /usr/local/bin/composer update 
安装了phpunit,但出现了许多其他软件包,如:

教义,密克拉布斯,法里奥,PHP文档,phpspec,塞巴斯蒂安,泰瑟,韦伯莫扎特

安装phpunit是否需要这些软件包?如果没有,我如何删除它

编辑II:

composer.json

{
    "name": "zendframework/skeleton-application",
    "description": "Skeleton Application for Zend Framework zend-mvc applications",
    "type": "project",
    "license": "BSD-3-Clause",
    "keywords": [
        "framework",
        "mvc",
        "zf"
    ],
    "homepage": "http://framework.zend.com/",
    "minimum-stability": "dev",
    "prefer-stable": true,
    "require": {
        "php": "^5.6 || ^7.0",
        "zendframework/zend-component-installer": "^1.0 || ^0.3 || ^1.0.0-dev@dev",
        "zendframework/zend-mvc": "^3.0.1",
        "zfcampus/zf-development-mode": "^3.0",
        "zendframework/zend-navigation": "^2.8",
        "zendframework/zend-json": "^3.0",
        "zendframework/zend-session": "^2.7"
    },
    "autoload": {
        "psr-4": {
            "Application\\": "module/Application/src/",
            "Admin\\": "module/Admin/src/",
            "Usuario\\": "module/Usuario/src",
            "Pedido\\": "module/Pedido/src"
        },
        "classmap": ["vendor/Demo/library"]
    },
    "autoload-dev": {
        "psr-4": {
            "ApplicationTest\\": "module/Application/test/"
        }
    },
    "require-dev":{
        "phpunit/phpunit": "6.*"
    },
    "extra": [],
    "scripts": {
        "cs-check": "phpcs",
        "cs-fix": "phpcbf",
        "development-disable": "zf-development-mode disable",
        "development-enable": "zf-development-mode enable",
        "development-status": "zf-development-mode status",
        "post-create-project-cmd": [
            "@development-enable"
        ],
        "serve": "php -S 0.0.0.0:8080 -t public/ public/index.php",
        "test": "phpunit"
    }
}

您的
composer.json
导致安装
原则/实例化器(
phpunit
的一个依赖项,它是
phpunit
的一个小型轻量级实用程序,用于在PHP中实例化对象,而不调用其构造函数)


您尚未安装Doctrine。

Doctrine几乎可以肯定是您的其他软件包之一的依赖项。如果愿意,您可以通过删除
供应商
并执行
composer安装
来确认这一点。很可能它会马上回来。谢谢你的回答。我已经更新了我的原始帖子。{“require”:{“条令/orm”:“*”}然后运行composer update,然后再次删除并运行composer update请阅读我的编辑I。我不想安装条令。谢谢。@JoséCarlos您的根本问题是,您需要停止在
供应商
中闲逛。你不需要手动在那里翻找,里面的任何东西都在那里,因为它应该在那里,这是基于你的
composer.json
所说的应该在那里。好吧,我明白了。。。但是现在,如果我试图通过编写命令访问phpunit,我得到的响应是“phpunit”不存在,如果我想安装,请使用“sudo apt get install phpunit”。。。我什么都不懂。仅在composer.json中调用phpunit进行配置是不够的?使用composer安装phpunit会将其可执行文件放在应用程序本身的
vendor/bin/phpunit
-只需运行它,而不是
phpunit
。它不会全局安装,这就是您使用
apt get
的目的,或者使用Composer进行全局安装: