vendor
Magento Enterprise 2.0.0의 디렉토리에 새 모듈을 만들려고했습니다 . Magento를 실행 한 후 모듈을로드 할 수 없습니다 setup:upgrade
.
파일을 app/code
디렉토리 로 옮기면 모듈이 성공적으로 설정됩니다.
Magento 2 Enterprise Edition의 경우 모든 모듈이 vendor
디렉토리에 있지만 Community Edition은 app/code
디렉토리를 사용합니다 . vendor
디렉토리에 사용자 정의 모듈을 만들 수 있는지 궁금합니다 . 예 경우에 사용자 정의 모듈을 만드는 사이의 차이 무엇인가 app/code
하고 vendor
.
vendor/Test/Testing/registration.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Test_Testing',
__DIR__ );
vendor/Test/Testing/composer.json
{ "name": "test/testing", "description": "Testing", "require": {
"php": "~5.5.0|~5.6.0|~7.0.0",
"magento/framework": "100.0.*" }, "type": "magento2-module", "version": "0.1.0", "license": [
"proprietary" ], "autoload": {
"files": [ "registration.php" ],
"psr-4": {
"Test\\Testing\\": ""
} } }
vendor/Test/Testing/etc/module.xml
<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Test_Testing" setup_version="0.1.0">
</module> </config>
엔터프라이즈 모듈을 공급 업체 디렉토리에 보관해야합니까?
—
Valery Statichnyi
죄송합니다. Magento 2 Enterprise 패키지를 다운로드했으며 코어 모듈이든 Enterprise 모듈이든 상관없이 모든 모듈이 공급 업체 디렉토리에 저장 되었기 때문에 귀하가 의미하는 바를 이해하지 못합니다. Magento 프레임 워크도 벤더 디렉토리에 저장됩니다. 원래 패키지에 app / code 디렉토리가 없습니다.
—
Jason Yip
composer.json의 "psr-4"항목이 무엇인지 물어볼 수 있습니까? 우리는 패키징을 사용하지만 자체 GitLab을 가지고 있으므로 공급 업체에서도 코딩해야하지만 코드가 인식되지 않습니다. Magento 코어 모듈에서 클래스를 인스턴스화 할 수 있지만 Cron이 작동하지 않습니다. 자동로드와 관련이 있다고 생각하는데 파일을 읽지 못합니다. 나는
—
Jacques
Company\Reviews\Cron\Check
파일 에 클래스 가 /vendor/company/Reviews/Cron/Check.php
있고 나는 cronjob을 가지고 Company\Reviews\Cron\Check
있지만 데이터베이스 cron_schedule
에는 "Class Company \ Reviews \ Cron \ Check does not exist"라고 표시되어 있습니다.