Композитор с Laravel Homestead в Windows 10

Пытаюсь настроить среду разработки Laravel в Windows 10, но у меня есть несколько проблем.

В руководстве на официальном веб-сайте Laravel говорится, что проще всего получить все зависимости с помощью homestead. https://laravel.com/docs/5.2/homestead

У меня уже есть Vagrant и Homestead. В Homestead предустановлен Composer. Руководства, которые я читал, чтобы войти в Vagrant, рекомендуют использовать бродячий установщик через Composer. Предполагается, что Composer и бродячий установщик запускаются из SSHing в поле Homestead Vagrant, или Composer и бродячий установщик должны запускаться локально через общую папку?

Если я запускаю это локально, я сталкиваюсь со следующей проблемой: «Laravel New» успешно настраивает новый проект laravel, но перед завершением предупреждает меня, что есть много вещей, которые он также рекомендует установить.

локальный запуск laravel new

symfony/var-dumper suggests installing ext-symfony_debug ()
symfony/translation suggests installing symfony/config ()
symfony/routing suggests installing doctrine/annotations (For using the annotation loader)
symfony/routing suggests installing symfony/config (For using the all-in-one router or any loader)
symfony/routing suggests installing symfony/dependency-injection (For loading routes from a service)
symfony/routing suggests installing symfony/expression-language (For using expression matching)
symfony/event-dispatcher suggests installing symfony/dependency-injection ()
symfony/http-kernel suggests installing symfony/browser-kit ()
symfony/http-kernel suggests installing symfony/class-loader ()
symfony/http-kernel suggests installing symfony/config ()
symfony/http-kernel suggests installing symfony/dependency-injection ()
psy/psysh suggests installing ext-pcntl (Enabling the PCNTL extension makes PsySH a lot happier :))
psy/psysh suggests installing ext-pdo-sqlite (The doc command requires SQLite to work.)
psy/psysh suggests installing ext-posix (If you have PCNTL, you'll want the POSIX extension as well.)
psy/psysh suggests installing ext-readline (Enables support for arrow-key history navigation, and showing and manipulating command history.)
paragonie/random_compat suggests installing ext-libsodium (Provides a modern crypto API that can be used to generate random bytes.)
monolog/monolog suggests installing aws/aws-sdk-php (Allow sending log messages to AWS services like DynamoDB)
monolog/monolog suggests installing doctrine/couchdb (Allow sending log messages to a CouchDB server)
monolog/monolog suggests installing ext-amqp (Allow sending log messages to an AMQP server (1.0+ required))
monolog/monolog suggests installing ext-mongo (Allow sending log messages to a MongoDB server)
monolog/monolog suggests installing graylog2/gelf-php (Allow sending log messages to a GrayLog2 server)
monolog/monolog suggests installing mongodb/mongodb (Allow sending log messages to a MongoDB server via PHP Driver)
monolog/monolog suggests installing php-amqplib/php-amqplib (Allow sending log messages to an AMQP server using php-amqplib)
monolog/monolog suggests installing php-console/php-console (Allow sending log messages to Google Chrome)
monolog/monolog suggests installing raven/raven (Allow sending log messages to a Sentry server)
monolog/monolog suggests installing rollbar/rollbar (Allow sending log messages to Rollbar)
monolog/monolog suggests installing ruflin/elastica (Allow sending log messages to an Elastic Search server)
league/flysystem suggests installing ext-fileinfo (Required for MimeType)
league/flysystem suggests installing league/flysystem-aws-s3-v2 (Allows you to use S3 storage with AWS SDK v2)
league/flysystem suggests installing league/flysystem-aws-s3-v3 (Allows you to use S3 storage with AWS SDK v3)
league/flysystem suggests installing league/flysystem-azure (Allows you to use Windows Azure Blob storage)
league/flysystem suggests installing league/flysystem-cached-adapter (Flysystem adapter decorator for metadata caching)
league/flysystem suggests installing league/flysystem-copy (Allows you to use Copy.com storage)
league/flysystem suggests installing league/flysystem-dropbox (Allows you to use Dropbox storage)
league/flysystem suggests installing league/flysystem-eventable-filesystem (Allows you to use EventableFilesystem)
league/flysystem suggests installing league/flysystem-rackspace (Allows you to use Rackspace Cloud Files)
league/flysystem suggests installing league/flysystem-sftp (Allows you to use SFTP server storage via phpseclib)
league/flysystem suggests installing league/flysystem-webdav (Allows you to use WebDAV storage)
league/flysystem suggests installing league/flysystem-ziparchive (Allows you to use ZipArchive adapter)
laravel/framework suggests installing aws/aws-sdk-php (Required to use the SQS queue driver and SES mail driver (~3.0).)
laravel/framework suggests installing doctrine/dbal (Required to rename columns and drop SQLite columns (~2.4).)
laravel/framework suggests installing guzzlehttp/guzzle (Required to use the Mailgun and Mandrill mail drivers and the ping methods on schedules (~5.3|~6.0).)
laravel/framework suggests installing league/flysystem-aws-s3-v3 (Required to use the Flysystem S3 driver (~1.0).)
laravel/framework suggests installing league/flysystem-rackspace (Required to use the Flysystem Rackspace driver (~1.0).)
laravel/framework suggests installing pda/pheanstalk (Required to use the beanstalk queue driver (~3.0).)
laravel/framework suggests installing predis/predis (Required to use the redis cache and queue drivers (~1.0).)
laravel/framework suggests installing pusher/pusher-php-server (Required to use the Pusher broadcast driver (~2.0).)
laravel/framework suggests installing symfony/psr-http-message-bridge (Required to psr7 bridging features (0.2.*).)
sebastian/global-state suggests installing ext-uopz (*)
phpunit/phpunit-mock-objects suggests installing ext-soap (*)
phpunit/php-code-coverage suggests installing ext-xdebug (>=2.2.1)
phpunit/phpunit suggests installing phpunit/php-invoker (~1.1)

Нормально ли иметь такой вывод при запуске laravel new?

Если я попытаюсь запустить 'laravel new', пока ssh'd в поле усадьбы, он просто скажет

запуск laravel new внутри Homestead / vagrant

laravel: command not found

У меня вопрос ..

Если я собираюсь настроить Laravel с помощью установщика Composer laravel локально, являются ли эти ошибки проблемой? У меня просто есть Composer, использующий локальную установку PHP 7 с официального сайта PHP - был ли другой способ получить PHP для разработки Composer / Laravel на W10?

Если мне нужно настроить новый проект laravel и использовать установщик laravel из композитора внутри Homestead, не следует ли в Homestead уже иметь модули Composers в PATH? Как мне добавить laravel в PATH для Composer внутри поля Vagrant / Homestead, если именно так он предназначен для использования?

Или установщик laravel с композитором - это не то, как вы должны начать проект? Это было в руководстве от laracasts, но предполагается, что Composer не выдает ошибок, а руководство laracasts не использует Homestead.

Спасибо. Усердно пытаешься влезть в это и чувствуешь себя нелепым, застряв на раннем этапе.


person Octoxan    schedule 25.06.2016    source источник
comment
Надеюсь, скоро тебе кто-нибудь поможет. Не думайте, что это смешно. Я застрял в том, что не могу удалить гребаный Laravel 5, встроенный Auth / Register, и чувствовал себя немного плохо, пока не увидел этот пост: D   -  person Vucko    schedule 25.06.2016


Ответы (2)


Вы должны установить новое приложение laravel после SSH входа на домашний компьютер. Вы, должно быть, получаете

laravel: команда не найдена

ошибка, поскольку вы, вероятно, не выполняете

composer global require "laravel/installer"

прежде чем делать

laravel new <project_name>

Кроме того, согласно docs,

Обязательно поместите каталог ~ / .composer / vendor / bin (или эквивалентный каталог для вашей ОС) в ваш PATH, чтобы исполняемый файл laravel мог быть обнаружен вашей системой.

Итак, вы должны разместить

export PATH="~/.composer/vendor/bin:$PATH" 

в вашем .bashrc или что-то в этом роде.

Если это не удается, попробуйте

composer create-project --prefer-dist laravel/laravel <project_name>

Обратитесь к документации laravel здесь для получения дополнительной информации.

person linuxartisan    schedule 26.06.2016
comment
Я сделал глобальное требование. Однако последняя строка работает. Интересно, почему laravel new ‹название проекта› не работает в Homestead - person Octoxan; 26.06.2016
comment
Возможно, вы не обновили свой PATH. Я отредактировал ответ, указав необходимую информацию. - person linuxartisan; 27.06.2016
comment
Глупо, что Homestead включает Composer, а также Laravel / Installer ... но не поставляется с Composers vendor / bin, уже установленным в PATH. - person Octoxan; 27.06.2016

Попробуйте получить среду разработки Laravel через предустановленный композитор

Введите следующую команду в командной оболочке:

composer global require "laravel/installer=~1.1"

Затем, набрав which composer, вы можете получить путь: В моей системе это: C:\Users\user\AppData\Roaming\Composer\vendor\bin

Получив путь, скопируйте путь и cd в него через командную оболочку, затем введите:

laravel new project

Будет настроена новая среда разработки Laravel. Вы можете увидеть новую папку, созданную, как только вы перейдете по этому пути.

person Kanak_    schedule 28.04.2020
comment
Спасибо за участие, пожалуйста, используйте правильное форматирование кода - person Christophe Hubert; 28.04.2020