Slackbot
06/11/2022, 8:48 PMSimon Kågedal Reimer
06/11/2022, 9:02 PMHendra Anggrian
06/11/2022, 9:18 PMChris Lee
06/11/2022, 10:15 PMVampire
06/12/2022, 8:40 AMSimon Kågedal Reimer
06/12/2022, 9:12 AMdependencies {
implementation("org.apache.pdfbox:pdfbox:2.0.17") {
capabilities {
requireCapability("org.apache.pdfbox:pdfbox-signing")
}
}
}Hendra Anggrian
06/13/2022, 8:46 PMpdfbox-signing retains all the dependencies of pdfbox so that it can be imported once. Since it doesn’t make sense to use the feature without main artifact anyway.
Unless of course it is discouraged due to performance issue or even programming standard.Vampire
06/13/2022, 8:57 PMpdfbox-signing and pdfbox-signing implements some interface of pdfbox, then you have what you want already anyway.
If the consumer for example uses code from pdfbox and pdfbox-signing, it is cleaner to also declare both dependencies as implementation (or api if appropriate) dependencies.
If the consumer for example only uses code from pdfbox but activates some runtime behavior by depending on pdfbox-signing, he should have pdfbox as an implementation (or api if appropriate) dependency and pdfbox-signing as runtime-only dependency.
...Hendra Anggrian
06/15/2022, 7:13 PM