[ https://issues.apache.org/jira/browse/MSHADE-313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16811508#comment-16811508 ]
Robert Scholte commented on MSHADE-313: --------------------------------------- bq. In fact, the real-world scenario is that "Main" actually WOULD reference the service indirectly. So if you like I can add that to the "Main" class to express this intent. Yes, minimizeJar is all about the classes that are references, directly, indirectly and (I thought this was the missing feature) the listed implementations of a used service. > Less agressive <minimizeJar> > ---------------------------- > > Key: MSHADE-313 > URL: https://issues.apache.org/jira/browse/MSHADE-313 > Project: Maven Shade Plugin > Issue Type: Improvement > Affects Versions: 3.2.1 > Reporter: Markus Karg > Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > The maven shade plugin already does a great job in minimizing JAR size. For > the majority of applications this is exactly what is needed. > On the other hand there are some application areas where the algorithm is too > agressive. One particular and rather frequently found case is the services > API: ServiceLoader will ceise to work for minimized JARs since it is the > prototype of the biggest "minimize-JAR-antipattern": String-to-class > conversion. > To make <minimizeJar> usable in such scenarios, there should be a set of > options to enable the usual suspetcs (like ServiceLoader) to be detected. -- This message was sent by Atlassian JIRA (v7.6.3#76005)