Compilator skips plugin compilation

I have created plugin from Editor Mode using build in tool. And everything works fine. After plugin creation editor restarted, source code rebuilt, button appeared and default functions work well.

The problem is that when I change plugin code, the changes won’t apply after compile. Even if I create mistake in plugin code, compilation will be still successful. And also I can’t find my plugin in content browser. Show Plugin Content in View Options ticked.

So how to include plugin in compilation process?

Thank you.

How do you compile? do you use hot reload, VS, Compile button in editor? Note that only UObjects will apper in Content Browser. Also make sure that plugin is turned on.

I compile using both Build Solution (F6) in VS and button in UE4 main toolbar. Also I tried to create new project and created there a couple of plugins from different templates. All of them work as intended (button appear), but changes to their code do not apply after successful compile.

Hello !

Plugins are not Hot-Reloaded, they are skipped over, so long as the VS project has been refreshed via the editor, etc. They will compile, but they are not reloaded. So you will have to close the editor, and restart it.

Yes it’s a real pain…

.

Hm, even after project refresh compiler skips plugin and says that target is up to date. To refresh project I click File->Refresh Visual Studio Project in UE4 SDK.

,

When your dealing with a plugin, the editor will not hot-reload the plugin, no matter what you do, or at least to my knowledge, or anyone else’s that I have talked too. The plugin is probably up to date, if not just recompile it in VS. But even after you do that, the UE4 editor is not going to reload that plugin. You will have to close the UE4 editor and restart it.

Sorry, I forgot to mention that I restarted SDK. So I do the following sequence of actions: click refresh project, close SDK, build project in VS, launch SDK and still nothing happens. Even mistake in plugin code doesn’t lead to compile error.

You should really only need to refresh the project if you have added new classes to it, i.e. new Cpp and H files. When you make a change to a source file, VS2015 is still saying that the target is up to date?

You should also be able to try, Open Windows Explorer, go to the directory of the project, and then right click on the Uproject file, in the popup menu should be a menu item of “Generate Visual Studio Project files”, click on that and it should update the SLN for the project etc. Then give the build a try.

Have you made sure that all the project files are in the correct public and private directories?

I tried to click “Generate Visual Studio project files” from explorer context menu and VS compiler still says that target is up to date.
And if I make any change to my game source code, compiler detects that file changed and compiles over 20 seconds.
What about private and public directories, I rely on build in tool to generate plugin from various templates. There is a button to create plugin in lower right corner of plugins window. Tomorrow I will try to manually create plugin using old tutorials.

I found one way to recompile an automatically generated plugin.

  1. Make sure that SDK is closed.

  2. Delete plugin .dll file located in …\Plugins\Binaries\Win64.

  3. Simply start project and SDK detects that dll is missing and asks to recompile. And this recompile will take into account plugin code changes.

Thanks everyone for attention :slight_smile: