-
Notifications
You must be signed in to change notification settings - Fork 25k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
X-Pack Transport Client POM does not include all dependencies #31946
Comments
Pinging @elastic/es-core-infra |
I've finally figured out what's happening here, and I think the fix is straightforward, but I want to double check with others on my assumptions. Previously we built a jar named "x-pack-api". There were a couple reasons for this, both to allow for a reduced set of classes in the future that xpack plugins would have access to, as well as to differentiate the pom file name for this jar from that which PluginBuildPlugin builds for the zip. It is the latter reason here that has caused the breakage, because x-pack-core is a "plugin", even though it is not really a plugin (it is a module, we just use the normal plugin build and the distribution build unzips the plugin zip). I see 3 possible solutions:
|
I like the idea of removing the pom from the plugins. As much as I like having the zips available in maven central that seems like the simplest change to be honest. |
In 1.x and 2.x, plugins were published to maven and the plugin installer downloaded them from there. This was later changed to install from the download service, and in 5.0 plugin zips were no longer published to maven. However, the build still currently produces an unused pom file. This is troublesome in the special case when the main jar of a plugin needs to be published (and thus needs a pom file of the same name). closes elastic#31946
In 1.x and 2.x, plugins were published to maven and the plugin installer downloaded them from there. This was later changed to install from the download service, and in 5.0 plugin zips were no longer published to maven. However, the build still currently produces an unused pom file. This is troublesome in the special case when the main jar of a plugin needs to be published (and thus needs a pom file of the same name). closes #31946
In 1.x and 2.x, plugins were published to maven and the plugin installer downloaded them from there. This was later changed to install from the download service, and in 5.0 plugin zips were no longer published to maven. However, the build still currently produces an unused pom file. This is troublesome in the special case when the main jar of a plugin needs to be published (and thus needs a pom file of the same name). closes #31946
In 1.x and 2.x, plugins were published to maven and the plugin installer downloaded them from there. This was later changed to install from the download service, and in 5.0 plugin zips were no longer published to maven. However, the build still currently produces an unused pom file. This is troublesome in the special case when the main jar of a plugin needs to be published (and thus needs a pom file of the same name). closes #31946
How about Maven project? Does anyone know what to do using x-pack-transport 6.3.0 client in a maven project???? |
I used maven,how to Add back the "x-pack-api" jar。 Please talk in detail。 |
i fix this problem with change version,here is my right pom
|
In 6.2 and earlier, the
x-pack-transport
POM had a dependency onx-pack-api
which pulled in 3rd party dependencies such as the UnboundId LDAP SDK and Bouncy Castle (for reading TLS keys)The (abbreviated) dependency tree was:
Since 6.3 the
x-pack-api
POM no longer exists, andx-pack-transport
simply depends onx-pack-core
which does not include any 3rd party dependencies.As far as I can tell from grepping, none of our generated POM files include a dependency for the ldapsdk (nor, I assume, bouncy castle).
This means that the published dependency in our docs is insufficient
There is a qa test for transport client with ML, but because it uses gradle with local project dependencies, it pulls in the transitive dependency list from x-pack-core including the LDAP sdk, etc
The text was updated successfully, but these errors were encountered: