-
Notifications
You must be signed in to change notification settings - Fork 106
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
Set JMS clients scope runtime to include required dependencies in the package #752
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This will make all the connectors packaging jms client and artemis jms client, even where not needed at all
Yeah, this was my concern. Is there a better way to do this automatically? |
The only way I see is making the deps explicit in the connector pom of the single connectors. |
This commit should be better. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mmm should have been enough to have them as dependencies... not sure why the runtime scope is needed, pretty sure they ended up in the packaged zip at sone point... |
Both of them are declared in parent pom as test dependencies https://github.com/apache/camel-kafka-connector/blob/master/parent/pom.xml#L292-L302 So when it's time to build the packaged connector they will be excluded, because of the scope. |
Yeah. They were in the final package in 0.3, but not anymore. Adding the scope to the fix-dependencies property file seems to work fine and the same technique could be used for other connectors as needed. |
@oscerd @valdar I believe you both have better understanding of the ramifications of this than I do. At first sight I have no objections with the approach, but I would kindly ask for one more thing. Do we have to update the missing dependencies part of the troubleshooting guide as part of this? My understanding is that we do need to update the note there. Therefore, I would probably just put a note saying "From version 0.x.x and forward the JMS dependencies are packaged along w/ sjms2 and this should not be a problem. Should you need to use other JMS clients, you need to repackage or use the legacy/regular/etc JMS component". |
+1 for this, thanks @orpiske. In general I think that trying to avoid the need to repackage is the best strategy for a great user experience. Let me know if you want me to add this note to the commit. |
@fvaleri thanks. Yes, please. I think it would be better to have that note added now that the discussion is fresh. Thanks! |
tnx @fvaleri ! |
Not sure if there is a better way to do this, but it works and it is much more convenient. What do you think?