Wanted to install Laravel-Excel (Maatwebsite) package manually without composer, but I dont know how.
Why? Because I have a laravel project in a free hosting server setup by other guy, and I can only access using Filezilla to edit/download/upload the codes.
If only Filezilla allow a command prompt that could use "composer update", then it will be easier.
47 Answers
I got solution! I cant use composer on my company because of secure network. But i can download zip form github and install it manual. The below is my example for HTMLPurifier:
- download and extract library mews/purifier to vendor directory
- add below line in vendor/composer/autoload_psr4.php
This sentence will load all of file from vendor/mews/purifier/src and autoload in namespace Mews\Purifier\
'Mews\\Purifier\\' => array($vendorDir . '/mews/purifier/src'), Sometime you need add library into autoload_namespaces.php intead of, please read in
You got Mews\Purifier\Facades\Purifier not found if public config before finish step 3
$ php artisan vendor:publish --provider="Mews\Purifier\PurifierServiceProvider"
- add below json in vendor/composer/installed.json
This for composer history, providers and aliases will be load in config/app/php for register new provider
{ "name": "mews/purifier", "version": "v2.0.12", "type": "library", "extra": { "laravel": { "providers": [ "Mews\\Purifier\\PurifierServiceProvider" ], "aliases": { "Purifier": "Mews\\Purifier\\Facades\\Purifier" } } }, "autoload": { "psr-4": { "Mews\\Purifier\\": "src/" } } }, Now you run this config, then vendor/mews/purifier/config will be move to config folder
$ php artisan vendor:publish --provider="Mews\Purifier\PurifierServiceProvider"
- Add the package to the vendor folder. You can upload it using filezilla
- Add a reference in \vendor\composer\autoload_namespaces.php
- Add a reference in \vendor\composer\autoload_psr4.php
Source laravel.io
1it's easy to do it by following this download the package and set the files in app folder
YourProject/app/Laravel-Excel/ and then add the path to composer.json in autoload
"autoload": { ... "classmap": [ "database/seeds", "database/factories" "app/Laravel-Excel" ], ... }, Run the composer dump-autoload
the solution refs to this question referance answer
download the package locally and then upload the package folder (found under vendor) along with the updated composer.json
7Depending on how strict the server is, you could SSH into your Server. But doing it locally then uploading the required files is usually the way to go.
You might need to run composer autodump if you don't wipe the cache.
3If everything works on local environment then copy your package and composer folder to server which is located at vendor
upload \vendor\maatwebsite copy \vendor\maatwebsite\excel\src\config\excel.php to \config\excel.php