Skip to content

Conversation

@diwi
Copy link

@diwi diwi commented Jun 12, 2017

Hi,

(this is my first PR for processing. So im not sure if i did everything right so far ... pls let me know.)

This PR tackles the "Duplicate Library"-Conflict.
The problem occurs, when libraries are based on same 3rd party libraries (same or different version), like Fisica and Box2D for Processing both use jBox2d.

Fix:
In case of multiple matching libraries ( = possible duplicates) only the
required one is chosen, by making a guess based on the other, guaranteed,
libraries in use.
In a first pass, the guaranteed libraries are cached.
In a second pass, unresolved package-library mappings are generated, based on pass 1.

old Error message:
conflict

fixed:
conflict

Not sure if these verbose print-warnings are necessary, but i kept them for the moment. Most users dont have to deal with possible duplicates anyways i guess.

In case of multiple matching libraries (possible duplicates) only the
required one is chosen, by making a guess based on the other, guaranteed,
libraries in use.
In a first pass, the guaranteed libraries are cached.
In a second pass, unresolved package-library mappings are generated, based on pass 1.
@diwi
Copy link
Author

diwi commented Jun 14, 2017

any thoughts, suggestions?

@diwi
Copy link
Author

diwi commented Jun 24, 2017

For Debugging, I am using this debug sketchbook.
It contains 3 librarys, all dependent on box2d (different versions), as well as 1 top level box2d library.
To use it, set the sketchbook path to the extracted folder, and run this PR-branch.

Download: Sketchbook_DebugDuplicateLibraryConflicts.zip

duplicatelibraryconflict_sketchbookscreen

I could only test on windows so far, but i expect it to work on other systems as well.

…o bugfix-duplicateLibraryConflict

# Conflicts:
#	java/src/processing/mode/java/JavaBuild.java
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant