lukecwik commented on pull request #16740:
URL: https://github.com/apache/beam/pull/16740#issuecomment-1036801953


   To be able to allow the user to supply as much of the classpath as possible 
we would need to use an implicitly allowed list and exclude all the 
dependencies and their transitive dependencies that we don't want or use the 
implicitly denied rule and include all the dependencies we do want and their 
transitive dependencies that are necessary which wouldn't be provided by 
sdks-java-core.
   
   The shadow plugin doesn't handle transitive dependencies for you 
automatically and requires you to list them all either via include or exclude 
rules.
   
   To not have to maintain very big lists we could filter dependencies based 
upon Gradle configurations by selectively filtering what is included/excluded 
[using a 
closure](https://imperceptiblethoughts.com/shadow/configuration/dependencies/#programmatically-selecting-dependencies-to-filter).
 The idea is that we would use the `provided` gradle configuration to represent 
what we want to exclude (e.g. beam-sdks-java-core, avro) and check whether the 
dependency is within that gradle configuration.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to