문제

나는 비영구적 인터넷에 떠다니는 몇 가지 것들을 보았습니다(예:Twitter) Magento 2의 최근 변경 사항으로 인해 작곡가를 통해 공급업체 디렉터리에 모듈을 설치할 수 있게 되었으며 Magento 2는 심볼릭 링크 장난 없이 모듈을 볼 수 있습니다.

이것이 사실이라면, "최소한의"가 있습니까? composer.json모듈 개발자가 Magento 2 사용자가 모듈을 시스템에 설치할 수 있도록 모듈과 함께 사용할 수 있는 " 파일이 떠다니나요?

도움이 되었습니까?

해결책 2

이와 같은 것이 트릭을 수행해야 할 것 같습니다.

{
    "name": "pulsestorm/module-name",
    "description": "A description of your extension",
    "authors": [
        {
            "name": "Robert Hoffner",
            "email": "rhoffner@example.com"
        }
    ],
    "require": {},
    "autoload": {
        "psr-4": {
            "Package\\Module\\": "src/path/to/Package/Module/Package/Module",
        },        
        "files": [
            "src/path/to/Package/Module/registration.php",
        ]
    }    
}

여기서 핵심은 자동 로더 섹션입니다.클래스 파일을 가리키는 PSR-4 자동 로더를 설정합니다. 그리고 자동으로로드 registration.php.Composer가 공급업체에 파일을 삭제하고 자동 로드 파일을 다시 생성하면 Magento가 모듈을 볼 수 있습니다.

이것의 깔끔한 부작용 중 하나는 코드가 더 이상 필요하지 않다는 것입니다. app/code!

다른 팁

업데이트

개발 브랜치의 최신 변경 사항(10월 7일)으로 인해 몇 가지 사항이 변경된 것 같습니다.이제 공급업체 디렉토리에 있는 모듈을 지원하는 것이 가능한 것처럼 보입니다.

모듈 설치에 대한 두 가지 예를 만들었습니다.하나는 파일을 앱/코드에 복사하는 것이고 다른 하나는 공급업체 디렉터리에 있는 모듈을 등록하는 것입니다.

복사 전략: https://github.com/mttjohnson/magento2-sample-module-minimal-copy등록 전략: https://github.com/mttjohnson/magento2-sample-module-minimal-register

개발 목적으로는 Magento에서 실행되는 파일을 직접 수정하고 테스트한 다음 모듈 저장소에 다시 커밋할 수 있기 때문에 등록 전략을 활용하는 것이 더 유용하다고 생각합니다.

원래 답변

당신이 가지고 있다면 composer.json 다음 유형을 포함하는 모듈 작성기 패키지용 파일 magento2-module 그러면 기본적으로 파일은 다음의 지정된 매핑된 디렉터리로 복사됩니다. app/code 예배 규칙서.

{
    "name": "vendorname/module-name",
    "type": "magento2-module",
    "require": {
        "magento/magento-composer-installer": "*"
    },
    "extra": {
        "map": [
            [
                "module",
                "VendorName/ModuleName"
            ]
        ]
    }
}

이 예에서 Composer.json은 작곡가 패키지 이름입니다. vendorname/module-name 그러면 작곡가 패키지의 파일이 다음 위치에 배치됩니다. vendor/vendorname/module-name.

특별한 유형의 magento2-module 에서 작곡가 플러그인으로 구현됩니다. 마젠토/마젠토-컴포저-설치 프로그램 패키지.그렇기 때문에 필수 섹션에 나열했습니다.적절한 마젠토로 파일을 복사하는 것은 이 작곡가 플러그인입니다. app/code 예배 규칙서.

그만큼 extra: {map: [["composerDir","MagentoDir"]]} 섹션은 magento 디렉토리 구조의 어느 부분에 매핑할 작곡가 패키지의 부분을 알기 위해 작곡가 플러그인 설치 프로그램에서 참조됩니다.제공된 예에서는 다음과 같은 작업이 수행됩니다. vendor/vendorname/module-name/module 거기에서 파일을 복사하십시오. app/code/VendorName/ModuleName.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 magento.stackexchange
scroll top