Expand my Community achievements bar.

SOLVED

Install service pack without recompiling artefacts aganist corresponding uber jar

Avatar

Level 1

Is it okay to upgrade the AEM with 6.5.5 service pack and keep the artefacts compiled against 6.5.0 itself. We tested functionally and there are no issues. Is there a mandatory requirement that all artefacts on the instance needs to be compiled against the same version.

1 Accepted Solution

Avatar

Correct answer by
Employee Advisor

In many cases this approach works. But there are cases, where API changes are introduced (typically for security reasons), which make bundle imports not working anymore. But that's something you can find out very easily. But evn in that case I would suggest that update to the matching uber.jar asap.

 

Jörg

View solution in original post

4 Replies

Avatar

Employee

Hi @ashissharma619,

When you need to recompile, the first thing to do is update your project to reference the AEM UberJar. As documented on https://docs.adobe.com/content/help/en/experience-manager-65/developing/devtools/ht-projects-maven.h..., the UberJar is available in two different versions:

  • An obfuscated version which is freely available on repo.adobe.com.
  • An unobfuscated version which can only be obtained by licensed customers and partners through Adobe Support.

There are a variety of cases when you need the unobfuscated version – certain types of unit tests, certain Declarative Services use cases, etc. These are laid out in the documentation. If you were using the obfuscated version before, you can continue to use the obfuscated version. And if you needed the unobfuscated version, you still need it.

 

I would recommend to go with exact uber-jar version matching with AEM. Adobe recommends deploying against the Uber Jar that ** does not **contain the deprecated APIs to make sure that your applications will run properly on future versions of AEM.

 

Thanks!!

Avatar

Level 1

What if I don't recompile at all. I will simply install service pack 6.5.5 into the aem instance and my artefact uber jar stays at 6.5.0 itself . I think due to the lesser number of overlays,  there are no issues functionally. But, is the okay to do it this way.

Avatar

Employee

Yes, in that scenario I don't think it should cause any issue. In case of any dependencies error, you can just import the dependency into parent and core POM in your project.

 

 

Avatar

Correct answer by
Employee Advisor

In many cases this approach works. But there are cases, where API changes are introduced (typically for security reasons), which make bundle imports not working anymore. But that's something you can find out very easily. But evn in that case I would suggest that update to the matching uber.jar asap.

 

Jörg