You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Most of the subprojects in the OCI SDK look to me like they're generated. If so, whatever template it is that makes their pom.xmls should be updated to also include the following explicit dependencies. Here I've also assumed that relevant ones are managed in the root pom.xml's <dependencyManagement> section (which PR #388 implements if I remember right):
It's good Maven practice to add an explicit dependency on the containing artifact when you import some class. It makes it clearer to a customer what exactly is being used directly by the project.
I see in the root pom.xml that a few dependencies get inherited by all projects (lombok, slf4j and jakarta.ws.rs-api). It would be better, too, if these were explicitly placed in every pom.xml. Ordinarily this wouldn't be at all worth it because of the sheer number of subprojects, but if they're all generated anyway it strikes me that it shouldn't be a big deal.
The text was updated successfully, but these errors were encountered:
jodoglevy
added
the
SDK
Issue pertains to the SDK itself and not specific to any service
label
Apr 7, 2022
(Minor issue; didn't want it to get lost.)
Most of the subprojects in the OCI SDK look to me like they're generated. If so, whatever template it is that makes their
pom.xml
s should be updated to also include the following explicit dependencies. Here I've also assumed that relevant ones are managed in the rootpom.xml
's<dependencyManagement>
section (which PR #388 implements if I remember right):Here is an arbitrary place where
bmc-circuitbreaker
classes are used explicitly:https://github.com/oracle/oci-java-sdk/blob/v2.22.0/bmc-aivision/src/main/java/com/oracle/bmc/aivision/AIServiceVisionClient.java#L10
Here is an arbitrary place where Jackson classes are used explicitly:
https://github.com/oracle/oci-java-sdk/blob/v2.22.0/bmc-aivision/src/main/java/com/oracle/bmc/aivision/model/AnalyzeImageResult.java#L23
Here is an arbitrary place where Guava is used explicitly (which could easily be replaced by Java 8 constructs):
https://github.com/oracle/oci-java-sdk/blob/v2.22.0/bmc-ailanguage/src/main/java/com/oracle/bmc/ailanguage/AIServiceLanguageAsyncClient.java#L354
Here is an arbitrary place where Jersey Apache connector stuff is used explicitly:
https://github.com/oracle/oci-java-sdk/blob/v2.22.0/bmc-ailanguage/src/main/java/com/oracle/bmc/ailanguage/AIServiceLanguageAsyncClient.java#L44
It's good Maven practice to add an explicit dependency on the containing artifact when you
import
some class. It makes it clearer to a customer what exactly is being used directly by the project.I see in the root
pom.xml
that a few dependencies get inherited by all projects (lombok
,slf4j
andjakarta.ws.rs-api
). It would be better, too, if these were explicitly placed in everypom.xml
. Ordinarily this wouldn't be at all worth it because of the sheer number of subprojects, but if they're all generated anyway it strikes me that it shouldn't be a big deal.The text was updated successfully, but these errors were encountered: