hey Peppe, duplicated dependency jars are an unfortunate result of the process with focus on getting the independent extension repos up and distributing. of course we planned to clean that out at a later stage. so thanks for looking into it.
i'm not sure how to deal with it intelligently. current state 1. developer must be aware that other packaged extension uses the same dependency. make sure to use the same version. pack it to lib/ext/lib/ where shared dependencies will overwrite each other so in the end only one will survive. ideally 2. maven packaging will detect a doubled dependency and - either throw an error and stop or better - actually fix it by (re)moving the duplicate. not sure how difficult any of this is to realize in maven. Sextante extension utilizes ClassGraph now to find classes/resources. it can find duplicate paths[1] maybe that is an approach. ideas? ..ede [1] https://github.com/classgraph/classgraph/wiki/Code-examples#find-all-duplicate-class-definitions-in-the-classpath-or-module-path On 15.01.2022 11:26, Giuseppe Aruta wrote:
Hi, I gave a look into the folders of OpenJUMP-Portable-20220114-r5017 and I found that some libraries are duplicated or are in a wrong place a) xml-apis-1.3.04.jar is into OJ/lib/ext/OpenKlem folder. It should be into the OJ/lib folder as also embedded classes into OpenJUMP.jar need this library. It is quite impossible to view (Sextante) Raster Image layers if OJ does not detetch this class. OpenJUMP 1.16 has this class into OJ/lib folder, a newer one: xml-apis-1.4.01.jar b) Both OpenKlem and Sextante have the following duplicated libraries into their folder: jep-2.4.2.jar, jfreechart-1.5.3.jar. I think these classes should go into OJ/Lib/ext or, better OJ/lib folder (and embedded into OpenJUMP core dist. I prefer second option as both classes present many advantages compared to what OpenJUMP core uses instead: a) jep is a math parser and it has its counterpart in pirol math parser libraries embedded into OpenJUMP ( classes de.fho.jump.pirol.utilities.*). Jep is used by both Sextante raster/vector calculators and OpenKlem raster calculator . Pirol parser is used into Feature calculator. But jep is more complete, it allows you to do logical operations (it, and, or, etc) and it has algorithms to work with matrices). One day we can subsitute pirol calsses with jep. b) jfreechart is used by Sextante and OpenKlem diagrams. OpenJUMP uses JAIMath* classes which have lesser features. JMathPlot is in github but the project https://www.jfree.org/jfreechart/ <https://www.jfree.org/jfreechart/> seems more active in the last few years. Best regards Peppe _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
_______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel