Expand my Community achievements bar.

SOLVED

AEMasCS SDK Version upgrade clarification

Avatar

Level 3

Hi Devs/Archs,

       At present, our application parent pom.xml, we are using <aem.sdk.api>2021.6.5540.20210615T210737Z-210527</aem.sdk.api>. <version>2023.12.14697.20231215T125030Z-231200</version>. Our AEMasCS was latest AEM release version. My question was when we ran our application on AEMasCS, which sdk version will be take by AEMasCS ? whether it will take our application pom.xml sdk or AEMasCS latest SDK version? Kindly please let us know your thoughts...

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hi @rajat168

 

In your case, with AEMasCS using the latest release version and your application's pom.xml specifying aem.sdk.api version 2023.12.14697.20231215T125030Z-231200, AEMasCS most likely will use the SDK version specified in your application.

Here's why:

  • Default behavior: By default, AEMasCS prioritizes the SDK version defined in your application's pom.xml. This allows developers to ensure their application uses the specific SDK version they've tested and developed with.
  • Compatibility within specified version: As long as the version you've specified (2023.12.14697.20231215T125030Z-231200) is compatible with the latest AEMasCS release version, it will be used without issue. You can check compatibility information in the AEMasCS release notes or documentation.
  • Exception for incompatible versions: If your specified version is incompatible with the latest AEMasCS, then AEMasCS will attempt to use the closest compatible version available. This is to ensure minimal disruption to your application, but might introduce unexpected behavior compared to your development environment.

To confirm which SDK version is actually used:

  • Check the AEM Admin Console. The About Adobe Experience Manager screen often displays the used SDK version.
  • Review AEM logs. Look for messages related to the SDK version, especially during startup or deployment.
  • Consult your AEMaaCS administrator. They can confirm if there are any platform-specific configurations overriding the chosen SDK version.

 

For more information you can refer to the following links : 

 

Thanks

View solution in original post

6 Replies

Avatar

Correct answer by
Community Advisor

Hi @rajat168

 

In your case, with AEMasCS using the latest release version and your application's pom.xml specifying aem.sdk.api version 2023.12.14697.20231215T125030Z-231200, AEMasCS most likely will use the SDK version specified in your application.

Here's why:

  • Default behavior: By default, AEMasCS prioritizes the SDK version defined in your application's pom.xml. This allows developers to ensure their application uses the specific SDK version they've tested and developed with.
  • Compatibility within specified version: As long as the version you've specified (2023.12.14697.20231215T125030Z-231200) is compatible with the latest AEMasCS release version, it will be used without issue. You can check compatibility information in the AEMasCS release notes or documentation.
  • Exception for incompatible versions: If your specified version is incompatible with the latest AEMasCS, then AEMasCS will attempt to use the closest compatible version available. This is to ensure minimal disruption to your application, but might introduce unexpected behavior compared to your development environment.

To confirm which SDK version is actually used:

  • Check the AEM Admin Console. The About Adobe Experience Manager screen often displays the used SDK version.
  • Review AEM logs. Look for messages related to the SDK version, especially during startup or deployment.
  • Consult your AEMaaCS administrator. They can confirm if there are any platform-specific configurations overriding the chosen SDK version.

 

For more information you can refer to the following links : 

 

Thanks

Avatar

Community Advisor

Hi @rajat168 
The dependency for the aem.sdk.api in your pom will be used only for dev dependency/compilation, the scope is provided thats means the application will always be using the latest version installed in AEM despite of the version in the POM. It is similar to uber-jar.

 

 

<dependency>
                <groupId>com.adobe.aem</groupId>
                <artifactId>aem-sdk-api</artifactId>
                <version>${aem.sdk.api}</version>
                <scope>provided</scope>
            </dependency>

 

Its always a best practice to update the api version so that you don't have any unexpected errors in the instance.



Arun Patidar