Преглед на файлове

Added a basic description for SDK Plugins

MeFisto94 преди 5 години
родител
ревизия
330c9f5d70
променени са 1 файла, в които са добавени 29 реда и са изтрити 0 реда
  1. 29 0
      docs/plugins.md

+ 29 - 0
docs/plugins.md

@@ -0,0 +1,29 @@
+## SDK Plugins
+Our SDK consists of the Netbeans IDE and additional "Netbeans Modules" (nbm) bringing the jme specific tools.
+We call those Modules a `Plugin` whenever it is _not_ part of _this_ repository (not part of the standard distribution).
+This means every code which is optional is a plugin. In fact some `core modules` have been moved out to be a plugin for various reasons.
+
+### How can I develop a Plugin?
+As has been said, developing a plugin is essentially developing a netbeans module.
+For this open the SDK Project with Netbeans (if you previously built the SDK, there is the correct version of netbeans in the `netbeans` folder).
+Then add a module using your desired package and module names, just follow the Wizard.
+You can now depend on SDK or Netbeans API Modules and use the Wizards to realize your plugin's functionality.
+Search the internet for "Netbeans Platform Modules" or "Netbeans Platform API" when you are stuck.
+
+### How do I build a Plugin?
+Building a plugin basically works by invoking `ant nbm` on the folder and taking the resulting nbm file.
+Since this requires an active SDK build and can become more complex (e.g. when signing), look at https://github.com/jMonkeyEngine/sdk-update-center/tree/plugin-ci-templates for CI Templates.
+Currently this is realized using Github Actions. All you need to do is copying the related file and changing the package names.
+
+### How do I distribute a Plugin?
+The most simple way of distributing a plugin is to make users install your nbm.
+This means they have to download the file (most likely from your Github Releases section) and load the file using their SDK.
+
+We use the [SDK Update Center](https://github.com/jMonkeyEngine/sdk-update-center) to distribute our Plugins.
+This is where you want to apply for access as well, because your plugin will be available to every SDK User without further configuration.  
+Due to security reasons, applications are rather strict and can be rejected. Please understand that we have to be strict in order to prevent abuse.
+Click [here](https://github.com/jMonkeyEngine/sdk-update-center/tree/plugin-application) for more details.
+
+If your Plugins aren't SDK related (e.g. you extend the SDK to be an Editor for your game), you can also host your own Update Center.
+Fork the update-center repository for this and either distribute your code as modules (fork the SDK, add the modules and use the update-center for nightlies)
+or distribute your code as plugins (see our plugin branches for that).