I've encountered a strange behavior and possibly a bug with the plugin installation in the latest release of version 4.1 from the bug fix branch. When I click install, the plugin goes through the motion of installation and even displays the plugin has been installed, but there's no sign of installation. The install button still appears and there's no uninstall button.
Oddly enough, the plugins are loaded in memory. I also checked the installedPlugins.json file and the plugins I installed are listed in there. I've also tried doing a clean and rebuild and I get the same problem.
nopCommerce version 4.10 Operating system Microsoft Windows NT 6.2.9200.0 ASP.NET info v4.0.30319 Is full trust level True Server time zone SA Western Standard Time Server local time Monday, September 24, 2018 12:14:50 AM Coordinated Universal Time (UTC) Monday, September 24, 2018 4:14:50 AM Current user time Monday, September 24, 2018 12:14:50 AM HTTP_HOST localhost:15536 Headers Show Loaded assemblies Show
Any other suggestions? Finally, what's the process Nop goes through for loading a plugin? This would be great for helping people troubleshoot this problem.
Out of the box, it doesn't produce any problems for me. - Did you customize the solution? - Did you try the latest release from GitHub
Here are few things that can possibly help for troubleshooting. 1. Check if the plugin tables are created in the database. 2. Check if there are any log entries in System > Log 3. Check if application restart fixes the issue. 4. Try clearing the asp.net temporary files from your Windows directory.
As far as plugins are concerned, no matter if they are installed or not, they are loaded into memory at the time of startup. See Nop.Core\Plugins\PluginManager.cs file that does the magic.
I did do most of your troubleshooting tests before reporting the issue. I took a look at the tables and didn't see any plugin related ones. I would have looked through the localized strings table, but didn't consider it at the time. I didn't see any out of the ordinary log entries. I did restart the application and clear the cache several times to no avail. I briefly considered deleting the asp.net temporary files, but didn't feel it was necessary. It turns out it may have helped solve the problem.
To my surprise, I ran my solution this morning and plugins loaded correctly and even showed the uninstall button. It may have been caused during development when I pulled the latest release from GitHub and couldn't figure out why my plugin wasn't loading, but the others loaded fine. I discovered the latest release I checked out was version 4.2 and all of the stock plugins were marked as 4.2, but my plugin was marked 4.1. I checked out the "origin/nopCommerce-4.10-bug-fixes" which had the correct versioning. Could a stale cache of a DLL cause this issue? If the plugin loader was 4.2, then there wouldn't be any plugins listed at all although the DLL loader could have been looking for a 4.2 version. If so, it means Nop is loading DLLs into memory regardless of the version.
Apparently, the latest release isn't the latest release as it is marked version 4.2, while the official downloadable release is still 4.1. It's why I checkout "origin/nopCommerce-4.10-bug-fixes". I'll report this issue on another post.
You're not pulling the development branch but rather downloading and installing via the Releases section? i.e. https://github.com/nopSolutions/nopCommerce/releases