I am trying to create a component within ActiveMQ Artemis that would
shade johnzon and javax.json.

That component should then be used by other components within Artemis.

I'm doing that because some users want to use javax.json and others
want to use jakarta.json on their runtimes. Since we only use json
internally I am trying to shade our own usage and not relay on either
one of these package names.


However I'm getting crazy on this. I can't make shade to hide the
dependency. mvn dependency:tree still shows the libraries. and shade
will not work if I make them provided.e.


What is the right way to shade within my own project?


I have the project available on my own github fork here:

https://github.com/clebertsuconic/activemq-artemis/tree/commons-json

(type this if you can download my branch:

git clone https://github.com/clebertsuconic/activemq-artemis.git
cd activemq-artemis
git clone commons-json
mvn install -DskipTests=true
mvn dependency:tree

and here is what gets interesting.
if I go to artemis-selector (a package that relied on
artemis-commons-json) and type mvn dependency:tree on that package,
the dependency does not show up.


The issue is only when building the whole project...


and I have played with quite a few options! )



Any help would be appreciated ! :)


Thanks

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to