Ajout d'une librairie perso
Bonjour,
Je tente désespéramment d'ajout dans mon projet Symfony2 une librairie que j'ai écrite.
J'ai placé les fichiers dans vendor ce qui donne :
Code:
1 2 3 4 5 6
| - Pn
- Schema
- src
- Schema.php
- Attribute.php
- etc. |
Ensuite, j'ai modifié mon fichier composer.json pour déclarer mon namespace :
Code:
1 2 3 4 5 6
| "autoload": {
"psr-0": {
"": "src/",
"Pn\\Schema": "vendor/Pn/Schema/src"
}
}, |
Puis lancer la commande composer dump-autoload, qui a eu pour conséquence de générer le fichier autoload_namespaces.php avec mon namespace :
Code:
1 2 3 4 5 6 7 8 9
| <?php
// autoload_namespaces.php generated by Composer
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);
return array(
[...]
'Pn\\Schema' => $vendorDir . '/Pn/Schema/src',
[...]
); |
Mes classes ressemblent à ceci :
Code:
1 2 3 4 5
| <?php
namespace Pn\Schema;
class Schema {
[...]
} |
Code:
1 2 3 4 5
| <?php
namespace Pn\Schema;
class Attribute {
[...]
} |
Dans mon controller, je fais comme çà :
Code:
1 2 3 4 5 6 7
|
use \Pn\Schema\Schema as PnSchema;
[...]
public function testAction() {
$schema = new PnSchema('individu');
return new Response(json_encode(true));
} |
Bien entendu, comme tout ce que j'ai fait dans Symfony2 ne fonctionne jamais du premier coup même en suivant des tutos, je me tourne vers vous :)
Citation:
FatalErrorException: Error: Class 'Pn\Schema\Schema' not found in C:\wamp\www\pn-server\src\Pn\RestServerBundle\Controller\CriterionController.php line 66