실행하면 composer update
유선 출력이 수신됩니다.
내 composer.json은 다음과 같습니다.
{
"name": "laravel/laravel",
"description": "The Laravel Framework.", "keywords": ["framework", "laravel"],
"license": "MIT",
"repositories": [{
"type": "vcs",
"url": "https://github.com/Zizaco/ardent.git"
}],
"require-dev": {
"phpunit/phpunit": "4.3.*"
},
"require": {
"laravel/framework": "4.2.*",
"laravelbook/ardent": "dev-master as 2.4.0",
"zizaco/entrust": "dev-master",
"sebklaus/profiler": "dev-master",
"doctrine/dbal": "dev-master"
},
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations", "app/database/seeds", "app/tests",
"app/libraries"
]
},
"scripts": {
"post-install-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-update-cmd": [
"php artisan clear-compiled",
"php artisan optimize"
],
"post-create-project-cmd": [
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "stable"
}
어떻게 수정합니까?
답변
소프트웨어 종속성에 호환되지 않는 버전 충돌이 있습니다.
동시에 라 라벨 4.2.x 버전과 마스터 브랜치에서 “zizaco / entrust”를 설치하려고합니다. 그리고 그 마스터 브랜치는 적어도 라 라벨 5.0 (대략적으로 말하면)이 필요합니다.
문제는 지점에 대한 의존성에서 비롯됩니다. zizaco / entrust 패키지는 한때 마스터 브랜치에서 Laravel 4.2를 사용하고 있었고 그날 의존성을 설치할 수 있었을 것입니다. 하지만이 브랜치가 호환되지 않는 버전 요구 사항으로 업데이트되는 순간, 절대 실행할 수 없습니다.composer update
업데이트 된 종속성 하고 가져올 .
항상 태그 된 버전을 사용하십시오! 이상적으로는 호환 가능한 업데이트를 허용하는 완화 된 버전 요구 사항을 사용합니다. 이것은 물결표 2 자리 버전 요구 사항으로 표현되어야합니다.~1.2
1.2.0 이상 (예 : 1.2.99 또는 1.2.100) 및 1.3 이상을 설치합니다. 특정 패치 릴리스가 필요한 경우 : Caret-three-number 버전 ^1.2.10
은 1.2.10 이상, 1.3 이상을 설치합니다.
대신이 버전 요구 사항 dev-master
을 사용하면 마스터 브랜치에서 불안정한 상태 대신 릴리스 된 버전을 사용할 수 있으며 Laravel 4.2에서 여전히 작동하는 최신 버전을 처리 할 수 있습니다. 나는 zizaco / entrust 버전 1.3.0이 될 것이라고 생각하지만 버전 1.2도 자격이 있습니다. 로 이동합니다 "zizaco/entrust": "~1.2"
.
답변
다음 명령을 실행하십시오.
작성기 설치 –ignore-platform-reqs
또는
작곡가 업데이트 –ignore-platform-reqs
답변
나는 같은 문제에 직면하고 있습니다. ‘Lumen’마이크로 서비스 프레임 워크를 사용하고 있습니다. 최근에 두 개의 패키지를 설치하여 동일한 문제를 해결했습니다.
- sudo apt-get install php7.0-mbstring ,
- sudo apt-get install php7.0-xml 또는 sudo apt-get install php-xml
이것을 설치 한 후 다음 명령을 실행해야합니다.
composer update
희망, 문제가 해결 될 것입니다. 내 시스템에서 작업합니다.
답변
그 있었 dev-master
들에 자동으로 추가? ‘적합한 버전’을 사용 "*"
하거나 "@dev"
개발 패키지에 신경 쓰지 않는다면 불필요한 버전 제약으로 피하십시오 . 내 생각 엔 Entrust가 잠재적 인 문제의 원인이라고 생각합니다.
또한 "minimum-stability": "stable"
추가 제약을 부과하고
"minimum-stability": "dev",
"prefer-stable": true
갈등이 없습니다. 경험의 법칙이라고 생각하세요.
답변
'laravel/framework'
종속성 버전을에서 "^8.0"
으로 설정하는 동일한 문제를 해결 했습니다 "^7.0"
.
그 실행 후 composer update --ignore-platform-reqs
단순히 작동
답변
composer.json 내부 배열 "barryvdh/laravel-cors": "^0.7.3"
끝에 추가require
composer.json을 저장하고 실행 composer update
완료되었습니다!
답변
Laravel 5.8에서이 문제가 발생했습니다. composer require
각 라이브러리와 올바르게 설치된 모든 위치에 대해 하는 .
이렇게 :
composer.json 파일에 추가하거나 버전을 지정하는 대신 :
composer require msurguy/honeypot: dev-master
대신 버전을 지정하지 않고 수행했습니다.
composer require msurguy/honeypot
도움이 되었기를 바랍니다. 감사합니다.