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

Prefix inlined dependencies #91

Closed
SevereOverfl0w opened this Issue Dec 22, 2017 · 7 comments

Comments

Projects
None yet
3 participants
@SevereOverfl0w

SevereOverfl0w commented Dec 22, 2017

As you include your dependencies source code, when using this library with maven there are classpath conflicts. This results in using a version of the code that is unexpected if you wish to use plantuml as a library.

The simple solution here is to sed all references in the project to have the prefix plantuml. Or you could use jarjar as part of the build process https://code.google.com/archive/p/jarjar/#!

@arnaudroques

This comment has been minimized.

Contributor

arnaudroques commented Dec 22, 2017

Thanks for pointing this out.
We have not though about this...
As you have suggested, we are going to modify all external library by adding some prefix (something like ext.plantuml) so that classpath conflicts will be removed.
Regards,

@thetric thetric referenced this issue Jan 2, 2018

Closed

Gradle migration #93

@thetric

This comment has been minimized.

thetric commented Jan 3, 2018

In #93 I'm trying to replace the external libs with Maven dependencies which is in my opinion a better approach than merely prefixing as it's easier to update them.

@SevereOverfl0w what packages are conflicting in your build? Perhaps I can declare them as maven dependencies too

@SevereOverfl0w

This comment has been minimized.

SevereOverfl0w commented Jan 3, 2018

@thetric

This comment has been minimized.

thetric commented Jan 4, 2018

Ok, in my PR the Google lib zxing is already a maven dependency. The only problem is that a dependency of zxing doesn't work with Java 9 (see my first comment in the PR).

Are you sure that it is still necessary to prefix all external libs in the fat jar? The PR updated zxing to the latest version and should not cause problems

@SevereOverfl0w

This comment has been minimized.

SevereOverfl0w commented Jan 4, 2018

@arnaudroques

This comment has been minimized.

Contributor

arnaudroques commented Feb 22, 2018

In last release (V1.2018.1) we have prefixed some dependencies with "ext.plantuml"
Is this better for you ?

@SevereOverfl0w

This comment has been minimized.

SevereOverfl0w commented Feb 26, 2018

This has absolutely resolved my issue. We're now running against the latest on maven. Thank you!

As an aside the maven page is confusing due to the old releases. https://search.maven.org/#search|ga|1|plantuml plantuml shows an old release: 8059 as "latest". It might be worth adjusting the versioning to something like 10000.2018.1 in order to avoid this issue, as it confused me until I clicked through.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment