]
Ondrej Zizka commented on FURNACE-21:
-------------------------------------
Test case:
{code}
git clone git@github.com:OndraZizka/windup.git windup-FURNACE-21
cd windup-FURNACE-21
mvn install -DskipTests
#exec/tests/src/test/java/org/jboss/windup/test/exec/TagsIncludeExcludeTest.java
cd exec/
# Then test TagsIncludeExcludeTest.java.
{code}
Forge Tests: WARN if _DEFAULT_ addon contains duplicate classes which
are in dependencies, or duplicated classes in dependencies.
---------------------------------------------------------------------------------------------------------------------------------
Key: FURNACE-21
URL:
https://issues.jboss.org/browse/FURNACE-21
Project: Forge: Furnace
Issue Type: Enhancement
Components: Runtime, Test Harness
Reporter: Ondrej Zizka
Assignee: George Gastaldi
If the _DEFAULT_ addon (created by ForgeArchive getDeployment()) contains classes which
duplicate those in dependencies (which is very easy to achieve), then various negative
side effect may occur - e.g. querying for an @Annotation, or querying a Map with classes
as keys, etc etc.
Typically solving these errors is hard work.
Forge, resp. Furnace, should WARN about duplicated classes. Maybe optionally if that
would mean scanning all addons (but I assume that is being done anyway).
In other words:
1) Scan whole _DEFAULT_ addon and for each class, try loading that class by FQCN from
each dependency. If found, then WARN about it.
2) Scan all dependency addons and warn if duplicated FQCN is found.