Je suis nouveau à Composer et j'ai vraiment du mal à charger mes cours avec compositeur. Qu'est-ce qui me manque dans le processus suivant?Le compositeur ne charge pas automatiquement les classes requises
J'ai installé le package dans mon PHP inclut le dossier (ce qui est en dehors de la racine du document - Je ne sais pas si cela importe) comme ceci:
composer require monolog\monolog
Il a déclaré qu'il a terminé avec succès et je confirme le projet a été ajouté à mon dossier de fournisseur.
Mon fichier entier composer.json ressemble à ceci:
{
"require": {
"monolog/monolog": "^1.22"
}
}
Mon ensemble ressemble fichier de test comme celui-ci:
<?php
require_once "vendor/autoload.php";
use Monolog\Logger;
$log = new Logger("name");
?>
Et je reçois cette erreur lorsque je charge la page:
Fatal error: Uncaught Error: Class 'Monolog\Logger' not found in C:\Dropbox\Projects\Web\Websites\Instamation\wwwroot\qbtest.php:6 Stack trace: #0 {main} thrown in C:\Dropbox\Projects\Web\Websites\Instamation\wwwroot\qbtest.php on line 6
Il inclut le fichier vendor/autoload.php sans aucune erreur.
J'ai essayé d'exécuter ces commandes compositeur sans aucun changement:
composer update
composer dump-autoload -0
J'ai aussi essayé avec différents forfaits et je reçois la même erreur, donc je suis sûr qu'il n'a rien à faire avec le paquet monolog.
Y a-t-il un pas ici qui me manque? Je n'ai pas besoin de définir manuellement les classes à charger automatiquement dans un fichier json si j'en ai besoin dans le composeur, n'est-ce pas?
Edit 1:
Comme demandé, voici les chemins d'accès à mes fichiers différents.
Chemin vers la page de test:
C:\Dropbox\Projects\Web\Websites\Instamation\wwwroot\qbtest.php
Chemin du fichier composer.json (en dehors de la racine du document, mais dans mon comprend chemin):
C:\Dropbox\Projects\Web\Websites\Instamation\wwwincludes\composer.json
Mon dossier fournisseur est ici:
C:\Dropbox\Projects\Web\Websites\Instamation\wwwincludes\vendor\
et dans mon dossier fournisseur Je ces dossiers et fichiers:
bin/
composer/
monolog/
psr/
autoload.php
S'il vous plaît ajouter le chemin complet de la question à composer.json et la liste des répertoires que vous avez dans 'répertoire vendor'. –
@AlexBlex Merci. J'ai ajouté les informations que vous avez demandées. Est-ce que quelque chose regarde? – dallin