Deploy plugins to repo with a different type, so we have both "java" jar files and "plugin" jar files. Possibly (e.g.) search-1.7.1-plugin.jar
Make distribution (somehow) depend on org.igniterealtime.openfire.plugins:search:1.7,1
Copy search-1.7.1-plugin.jar to target/plugins/search.jar
The PR at https://github.com/igniterealtime/Openfire/pull/1240 will add the search.jar plugin - if found in a repo - to the distribution. Requires either manually populating the local repo, or creating a genuine repo (see above) and referencing it.
The PR @ https://github.com/igniterealtime/Openfire/pull/1239 sorts out #1 + #2. A standard release and snapshots repo with metadata is now created in Openfire/target/repo when "mvn deploy" is called. It will still be necessary to somehow copy from the build folder to https://igniterealtime.org/repo/ (as well as split that repo in to the standard release/snapshots pair) at an appropriate point. I'd suggest that copy from "release" is only done as part of a release process, snapshots could be done on every build or nightly.