WebHU - Programozási kérdések és válaszok

A szerző szükséges-dev függőséget igényel a különböző csomagokban a request-dev

Van néhány tesztem, amelyek névteret használva automatikusan betöltődnek az A csomagba

"autoload-dev": {
    "psr-4": {
        "Vendor\\PackageA\\PhpUnit\\": "tests/PhpUnit"
    }
},

Ez jól működik.

Van egy másik csomagom, a B csomag, amely szintén rendelkezik névteres tesztekkel, amelyek az A csomagban található névteres tesztek egyikét igénylik.

"autoload-dev": {
    "psr-4": {
        "Vendor\\PackageB\\PhpUnit\\": "tests/PhpUnit"
    }
},

Amikor azonban megpróbálom beilleszteni a fájlt a B csomagba, az osztály nem található

use Vendor\PackageA\PhpUnit\MyTestFromA;

class MyTestFromB extends MyTestFromA
{

Azt hiszem, hogy az autoload-dev cucc más csomagokból nem töltődik be.

Végzetes PHP-hiba: A „Vendor\PackageA\PhpUnit\MyTestFromA” osztály nem található a /full/path/to/PackageBClass.php 3. sorában.

Amikor megpróbálok importálni egy fájlt, amely automatikusan betöltődik a B csomagból a autoload használatával a autoload-dev helyett, nem kapok hibát.

Hogyan tudnám ezt leküzdeni?

Egy részem azon gondolkodik, hogy készítsek egy csomagot csak a tesztekhez, és mindkettőbe automatikusan betöltsem a autoload-dev nélkül, de először meg szeretném erősíteni.

05.12.2016


Válaszok:


1

Megoldás: A Composer autoload-dev nem működik.

Tekintse meg a dokumentumot. Azt írja ki: "autoload-dev (csak root)". A root csak azt jelenti, hogy csak a root csomagra vonatkozik. Mivel a csomagot mellékelte, a megjelenített composer.json fájl nem a gyökércsomag, így a autoload-dev szakasz figyelmen kívül marad.

07.12.2016
Új anyagok

A rádiógomb ellenőrzött eseményének használata a jQueryben
Ebben a cikkben látni fogjuk, hogyan kell dolgozni a jquery választógombbal ellenőrzött eseményeivel. A választógombok HTML gombok, amelyek segítenek kiválasztani egyetlen értéket egy csoportból...

Körkörös függőségek megoldása terraformban adatforrásokkal – lépésről lépésre
Mi az a körkörös függőségek Dolgozzunk egy egyszerű eseten, amikor az SQS-sor és az S3-vödör közötti körkörös függőség problémája van egy egymástól függő címkeérték miatt. provider..

Miért érdemes elkezdeni a kódolást 2023-ban?
01100011 01101111 01100100 01100101 — beep boop beep boop Világunk folyamatosan fejlődik a technológia körül, és naponta fejlesztenek új technológiákat a valós problémák megoldására. Amint..

🎙 Random Noise #2  – Örökbefogadás és hit
az analitika íratlan világának gondozása Szeretné, hogy ezek a frissítések a postaládájába kerüljenek? Iratkozzon fel itt . "Ha önvezető autókat gyártanak, akkor mi miért ne..

A legrosszabb politika és prediktív modellek májátültetésre jelöltek számára az Egyesült Államokban
A máj (vagy óangolul lifer) az emberi test legnehezebb belső szervére utal, amely csendesen működik a nap 24 órájában. Mit csinál a máj? 500 feladatot hajt végre a szervezet egészségének..

5 webhely, amely 2022-ben fejleszti front-end fejlesztői készségeit
Frontendmentor.io A tényleges projektek létrehozásával a Frontendmentor.io segítséget nyújt a front-end kódolási képességeinek fejlesztésében. A kódolást azután kezdheti meg, hogy..

Mikor kell használni a Type-t az interfészhez képest a TypeScriptben?
A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben..