Composer install – class not found
- ondrej256
- Člen | 188
Zdravím,
chtěl jsem si vyzkoušet jak vlastně funguje composer i z té druhé strany. Vytvořil jsem si jednoduchou knihovnu a zkusil si ji v projektu nainstalovat přes composer.
Knihovna se mně do projektu nainstaluje. Když vytvářím v kódu (v PhpStormu) instanci, tak se lze přes název třídy prokliknout přímo do stažené knihovny.
Když spustím kód v prohlížeči, vyskočí chyba:
Class 'DbPerformance\MultiUpdate' not found
Trochu jsem experimentoval a přesunul celou staženou knihovnu do app/libs, stiskl F5 a všechno jede. Jako by nette tu knihovnu nevidělo ve složce vendor. Mazat cache jsem zkoušel.
Nesetkali jste se s tímto problémem?
composer.json
{
"name": "db-performance/multi",
"description": "Library for increase performance of db in Nette Database",
"type": "library",
"license": ["GPL-2.0+"],
"require": {
"php": ">= 5.3.7",
"nette/nette": ">= 2.1.0"
},
"autoload": {
"psr-0": {
"DbPerformance\\": "src/"
},
"classmap": [
"src/MultiInsert.php",
"src/MultiUpdate.php"
]
}
}
- enumag
- Člen | 2118
Zřejmě špatná cesta k souboru, prostuduj si důkladně dokumentaci composeru.
Ve složce libs to funguje zřejmě protože tam ti to hledá RobotLoader, kterému jsou názvy souborů a cesty k nim lhostejné.