Eu tentei criar um novo módulo no vendor
diretório no Magento Enterprise 2.0.0. O módulo não pôde ser carregado depois que eu executei o Magento setup:upgrade
.
Se eu mover meus arquivos para o app/code
diretório, o módulo será configurado com sucesso.
Para a edição Magento 2 Enterprise, todos os módulos estão no vendor
diretório, mas a edição Community usa o app/code
diretório. Gostaria de saber se é possível criar módulo personalizado no vendor
diretório. Se sim, quais são as diferenças entre criar um módulo personalizado em app/code
e 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>
magento-enterprise
module
magento2
composer
Jason Yip
fonte
fonte
Company\Reviews\Cron\Check
de arquivo/vendor/company/Reviews/Cron/Check.php
e eu tenho um cron comoCompany\Reviews\Cron\Check
, mas no banco de dadoscron_schedule
apenas diz "Classe Empresa \ Comentários \ Cron \ seleção não existe"Respostas:
Módulos personalizados não devem ser desenvolvidos no
vendor
diretório Copie o conteúdovendor/magento/magento2-base
para a raiz do projeto, crie customizado.gitignore
conforme descrito aqui e inicialize o novo repositório git. Em seguida, desenvolva o módulo personalizado emapp/code/VendorName/ModuleName
.Mais tarde, quando você decidir distribuir o módulo, ele deverá ser empacotado e publicado . Quando alguém comprar / instalar seu módulo, ele será instalado automaticamente pelo compositor no
vendor
diretório do projeto.fonte