2017-11-07 24 views
0

플러그인을 설치하고 구성하는 데 몇 가지 문제가 있습니다. 어떻게 작동하는지 더 잘 이해하면 생각할 수 있습니다.CakePHP 3는 어떻게 cakephp-plugins.php 파일을 만들 수 있습니까?

작곡가를 통해 cakemanager/cakephp-settings 플러그인을 설치하면 내 공급 업체 폴더에 'cakephp-settings', 'cakephp-utils'(종속성) 및 '설정'이라는 3 개의 하위 폴더가있는 'cakemanager'폴더가 추가됩니다. 'cakephp-settings'폴더는 기본적으로 비어 있으며 모든 플러그인 파일은 'Settings'폴더에 있습니다.

그러나 마이그레이션을 실행하려고하면 /vendor/cakemanager/cakephp-settings/config/bootstrap.php 파일을 찾을 수 없다는 오류가 발생합니다.이 파일이 존재하지 않기 때문에 별다른 궁금증이 없습니다! 나는 일시적으로

'Settings' => $baseDir . '/vendor/cakemanager/Settings/', 

로 변경할 경우

'Settings' => $baseDir . '/vendor/cakemanager/cakephp-settings/', 

나는를 얻을 수 있습니다 : 거의 모든 곳에서 공급 업체/CakePHP의-plugins.php 파일에서 내 응용 프로그램

에서 같은 오류 나는이 있습니다 마이 그 레이션이 완료되고 내 페이지가 정상적으로 보이지만 작곡가 dumpautoload를 실행하면 트랙이 더 아래쪽으로 나옵니다. 영구 솔루션이 필요합니다.

플러그인 (composer.json 파일?)을 편집하여 cakephp-plugins.php 파일을 올바르게 빌드하고 bootstrap.php 파일의 올바른 경로를 찾도록하려면 어떻게해야합니까?

대상 폴더는 경우 composer/installers가 설치되어있는 "잘못"이라는 수
+0

당신이'작곡가가 installers' 만일 설치 /가 있습니까보기? – ndm

+0

예, 플러그인 composer.json에는 작곡가/설치 프로그램이 readme.md를 읽는 것과 관련하여 다음과 같은 내용이 포함되어 있습니까? - "extra": { "installer-name": "Settings" }, – Sanfly

+0

정확하고 그게 문제의 원인입니다. – ndm

답변

0

나는 당신이 그 루트에서 문제를 해결하므로, this pull request을 병합 밀어 시도 할 것을 제안, 플러그인 composer.jsoninstaller-name 옵션의 원인이됩니다 .

폴더 이름을 변경할 이유가 없으며 버전 3부터 CakePHP에는 composer/installers이 더 이상 필요하지 않으므로 옵션을 제거하면 문제가 해결됩니다.

실제로 필요하지 않은 경우 composer/installers을 제거 할 수도 있습니다.

Plugin::load('Settings', [ 
    'path' => ROOT . DS . 'vendor' . DS . 'cakemanager' . DS . 'Settings' 
]); 

는 또한 https://github.com/cakephp/plugin-installer과의 문제를보고 가치가있을 수 있습니다 : 수없는 경우, 당신은 또한 Plugin::load()를 통해 실제 경로를 지정하여 문제를 해결 할 수 있어야하는 것은 path 옵션을 호출/또는 https://github.com/composer/installers 일 수도 있습니다. installer-name 옵션과 관련하여 함께 작업하게 할 수도 있습니다.