다음 컴포저 사용법 튜토리얼 칼럼에서는 YII2가 컴포저를 통해 벤더를 최적화하는 방법을 소개하겠습니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!
이 기사에서는 Yii2 프레임워크를 설치하고 작성 도구를 통해 Vendor를 최적화할 때 발생하는 문제에 대해 논의합니다. 독자는 작성기의 기본 원리에 대해 어느 정도 이해하고 있으며 Yii2 프레임워크 설치에 대한 실제 경험이 있다는 데 동의합니다.
Yii2 커뮤니티에서 공식 권장 버전을 설치한 후 이런 문제가 자주 발생합니다
1 왜 Vendor 폴더가 없나요?
Yii2에서 Vendor는 Composer가 다운로드한 종속 라이브러리 파일입니다. 공식 프로젝트 템플릿 코드에는 자체 프로젝트 파일만 있고, Composer.json에 의존하는 yii 프레임워크 및 기타 클래스 라이브러리는 모두 기록됩니다. 설치되어 있는지 확인한 다음 설치하거나 업데이트하세요.
2 제가 직접 설치한 Yii2 프로젝트에서는 Vendor에 있는 패키지가 Composer.json에서 찾을 수 없고, 이러한 패키지 중 대부분이 당분간 필요하지 않습니다. 어떻게 하면 해당 패키지를 제거하고 Vendor를 최소화할 수 있나요?
검증된 시나리오
2.1 작곡가 제거를 사용하여 패키지 삭제
삭제된 패키지는 Vendor 폴더 하위의 작곡가.json에 기록되어야 하며, 패키지가 삭제되면 모든 패키지가 다시 설치됩니다.
2.2 작곡가 업데이트 --no-dev를 사용하여 패키지 삭제
개발 모드의 패키지는 직접 삭제됩니다. 삭제 후 프로젝트를 실행하면 오류가 직접 보고됩니다. 따라서 모든 개발 모드 패키지는 삭제할 수 없습니다
2.3 패키지 삭제 시에는 Remove codeception/verify를 사용하세요. 저의 과거 개발 경험에 따르면 대부분의 패키지는 삭제되지 않습니다. 사용되므로 제거 코드수신/확인 명령을 사용하여 Yii2의 작성기 패키지를 간소화할 수 있습니다. 이 명령은 작곡가 패키지를 최적화하는 핵심 부분입니다.
3 하나의 프로젝트 아래 여러 프로젝트가 있을 때 처음에 너무 많은 작곡가 패키지를 로드하여 로딩 성능 문제가 발생합니까? 내장된 지연 로딩으로 이 문제를 해결할 수 있습니까?
프로젝트에 분명히 불필요한 구성 요소는 직접 제거할 수 있습니다. 성능에 미치는 영향은 아직까지 발생하지 않았습니다. 지연 로딩은 프레임워크 수준의 최적화로 간주되며 그 능력을 믿기로 결정했습니다
4. 공급업체 경로 문제로 인해 디렉터리 또는 파일이 존재하지 않는다는 메시지가 표시됩니다
우리 프로젝트 경로가 E:sourcestemplates
이라고 가정합니다. Vendor 경로에 문제가 발생하면 나타납니다. 다음과 유사한 문제는 Composer 패키지가 존재하지 않는다는 것입니다
Invalid Parameter – yiibaseInvalidParamException The file or directory to be published does not exist: E:sourcestemplatesbackendvendorbower-asset/jquery/dist
파일 패키지가 존재하지 않습니다. 주된 이유는 공급업체 경로가 프로젝트 구성 파일과 일치하지 않기 때문입니다.
프로젝트의 기본 구성 파일인 main.php 아래에는 VendorPath의 특정 값인 Vendor에 대한 구성 항목이 있습니다. 구성 파일의 경로를 결합하려면 아래 두 그림과 관련 경로 구성을 참조하세요
첫 번째 사진
'vendorPath' => dirname(dirname(__DIR__)) . '/vendor',
두 번째 사진
'vendorPath' => dirname(dirname(dirname(__DIR__))) . '/vendor',
요약:
Compser를 사용할 때 다음 세 가지 문제를 고려해야 합니다.
1 Composer 설치와 Composer 업데이트의 차이점
2 Composer 버전 관리 및 안정성
3 공용 컴포넌트를 Composer 패키지 형태로 출력하고 유지하는 방법
다음 명령의 차이점은 네트워크 정보를 참조하세요
composer install
Composer가 가장 일반적으로 사용하는 명령이어야 합니다. 다운로드한 패키지를 로컬 작곡가.json 설치 패키지에 따라 프로젝트에 추가합니다. 공급업체 디렉터리에서 설치 중 패키지 버전 정보를 작곡가.lock에 넣어 버전을 잠급니다.
실제로 설치 중에 해당 패키지 버전이 발견되면 작곡가.잠금 버전이 현재 공급업체 디렉터리의 코드 버전과 일치하면 Composer는 아무 작업도 수행하지 않습니다. 작곡가.잠금의 목적은 최신 버전의 패키지를 가져오지 않고도 현재 버전으로 작업할 수 있도록 하는 것입니다.
composer update
작곡가.잠금 파일의 패키지 버전이 업데이트됩니다. 작곡가.json 기록된 모든 패키지가 최신 버전으로 업데이트됩니다.
작곡가 업데이트 명령을 주의해서 사용하세요.
컴포저를 사용하여 컴포넌트를 프로젝트에 참조하고 공용 컴포넌트가 된 경우 작곡가 명령을 주의해서 사용해야 합니다. 물론 유지 관리를 담당하는 전담자가 필요하며 공유 작업 권한은 없습니다.
더 많은 Composer 사용법 튜토리얼을 보려면 composer 명령 사용법 그래픽 튜토리얼 칼럼을 방문하세요!
위 내용은 YII2의 작곡가를 통해 공급업체를 최적화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!