diff --git a/packages/autoloader/README.md b/packages/autoloader/README.md index ba9b8f3819a1e..c5a87a764ac97 100644 --- a/packages/autoloader/README.md +++ b/packages/autoloader/README.md @@ -42,3 +42,5 @@ Current Limitations ----- We currently only support packages that autoload via psr-4 definition in their package. + +Your project must use the default composer vendor directory, `vendor`. diff --git a/packages/autoloader/src/CustomAutoloaderPlugin.php b/packages/autoloader/src/CustomAutoloaderPlugin.php index 7c184fc0ac6ef..189e891e9623b 100644 --- a/packages/autoloader/src/CustomAutoloaderPlugin.php +++ b/packages/autoloader/src/CustomAutoloaderPlugin.php @@ -1,4 +1,4 @@ -composer->getConfig(); + + if ( 'vendor' !== $config->raw()['config']['vendor-dir'] ) { + $this->io->writeError( "\nAn error occurred while generating the autoloader files:", true ); + $this->io->writeError( 'The project\'s composer.json or composer environment set a non-default vendor directory.', true ); + $this->io->writeError( 'The default composer vendor directory must be used.', true ); + exit(); + } + $installationManager = $this->composer->getInstallationManager(); $repoManager = $this->composer->getRepositoryManager(); $localRepo = $repoManager->getLocalRepository(); $package = $this->composer->getPackage(); - $config = $this->composer->getConfig(); $optimize = true; $suffix = $config->get( 'autoloader-suffix' ) ? $config->get( 'autoloader-suffix' )