Versions (relevant - OpenSearch/Dashboard/Server OS/Browser): 3.3.2
Describe the issue: I’d like to be able to use KNNQueryBuilder from a plugin but it’s very complex. If I want to use the default-shipped opensearch-knn version there’s no way to get only the jar from Maven while if I use opensearch-jvector I need to uninstall opensearch-knn plugin and replace it with that one.
In both cases my plugin needs to declare inside plugin-descriptor.properties either extended.plugins=opensearch-knn or extended.plugins=opensearch-jvector. This means that my plugin classes are loaded from a child classloader of those plugins and, therefore, I need to exclude all common transitive dependencies and this can be very error-prone (in addition to be very annoying).
In Elasticsearch that class is inside elasticsearch.jar, it would be nice to follow the same approach and make such integration much easier.