Magento 2 Enterprise: สร้างโมดูลใหม่ในไดเรกทอรีผู้ขาย


17

ฉันพยายามสร้างโมดูลใหม่ในvendorไดเรกทอรีใน Magento Enterprise 2.0.0 ไม่สามารถโหลดโมดูลหลังจากที่ฉันเรียกใช้ Magento setup:upgradeได้

ถ้าฉันย้ายไฟล์ไปยังapp/codeไดเรกทอรีโมดูลจะถูกตั้งค่าเรียบร้อยแล้ว

สำหรับ Magento 2 Enterprise edition โมดูลทั้งหมดอยู่ในvendorไดเร็กทอรี แต่ Community edition ใช้app/codeไดเร็กทอรี ฉันสงสัยว่ามันเป็นไปได้ที่จะสร้างโมดูลที่กำหนดเองในvendorไดเรกทอรี ถ้าใช่สิ่งที่เป็นความแตกต่างระหว่างการสร้างโมดูลที่กำหนดเองในและapp/codevendor

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>

คุณแน่ใจหรือว่าต้องการเก็บโมดูล Enterprise ในไดเรกทอรีผู้ขาย
Valery Statichnyi

ขออภัยฉันไม่เข้าใจสิ่งที่คุณหมายถึงเพราะฉันดาวน์โหลดแพ็คเกจ Magento 2 Enterprise และโมดูลทั้งหมดถูกเก็บไว้ในไดเรกทอรีผู้ขายไม่ว่าจะเป็นโมดูลหลักหรือโมดูลองค์กร แม้แต่กรอบวีโอไอพีจะถูกเก็บไว้ในไดเรกทอรีผู้ขาย ไม่มีไดเรกทอรีแอป / รหัสในแพคเกจเดิม
Jason Yip

ฉันขอถามสิ่งที่ "psr-4" รายการในผู้แต่งของคุณ เราใช้บรรจุภัณฑ์ แต่เรามี GitLab ของเราเองดังนั้นเราจึงต้องใช้รหัสในผู้ขายเช่นกัน แต่รหัสของฉันไม่เป็นที่รู้จัก ฉันสามารถยกระดับชั้นเรียนของฉันจากโมดูลหลักของ Magento ได้ แต่ Cron ไม่ทำงาน ฉันคิดว่ามันเกี่ยวกับการโหลดอัตโนมัติไฟล์ของฉันไม่ได้ถูกอ่าน ฉันมีชั้นเรียนCompany\Reviews\Cron\Checkในไฟล์/vendor/company/Reviews/Cron/Check.phpและฉันมี cronjob ชอบCompany\Reviews\Cron\Checkแต่ในฐานข้อมูลcron_scheduleมันก็บอกว่า "ชั้น บริษัท \ รีวิว \ Cron \ ตรวจสอบไม่อยู่"
Jacques

คำตอบ:


11

โมดูลที่กำหนดเองไม่ควรพัฒนาในvendorไดเรกทอรี คัดลอกเนื้อหาจากvendor/magento/magento2-baseไปยังรูทของโครงการสร้างกำหนดเอง.gitignoreตามที่อธิบายไว้ที่นี่และเริ่มต้นพื้นที่เก็บข้อมูล git ใหม่ app/code/VendorName/ModuleNameจากนั้นก็พัฒนาโมดูลที่กำหนดเองภายใต้

ต่อมาเมื่อคุณตัดสินใจที่จะแจกจ่ายโมดูลก็จะต้องได้รับการบรรจุและเผยแพร่ เมื่อใครบางคนจะซื้อ / ติดตั้งโมดูลของคุณมันจะถูกติดตั้งโดยอัตโนมัติโดยผู้แต่งไปยังvendorไดเรกทอรีของโครงการของพวกเขา

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.