[AEM 6.5] Project archetype and maven dependencies that are embedded | Community
Skip to main content
Level 2
June 22, 2021

[AEM 6.5] Project archetype and maven dependencies that are embedded

  • June 22, 2021
  • 2 replies
  • 2220 views

Hi, I am working on a project that was created recently using the AEM 6.5 archetype base project for best practices LINK and we have run into a few scenarios where we have added a dependency, then we code/build/deploy and the bundle will not start because it cannot import a needed package. I guess it is expecting to find the package exported from some other OSGi bundle.

We solve this by adding the needed packages to the bnd-maven-plugin config under "-conditionalpackage" LINK

Unfortunately, sometimes this leads us down a "rabbit hole" where we have to add a lot of packages, and end up pulling in tons of dependencies just so we can use like one class.

  1. Are we doing this the correct/ideal way?
  2. Is this maintainable? What if we keep doing this for years and end up with 50 packages and a 500mb+ bundle size

Thanks.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

2 replies

kchaurasiya
Level 5
June 23, 2021

@sheani : Did you try to install the service package on your AEM instance? If not then try to install the aem-service-pkg-6.5.4.zip service package.

 

Note -  Once you setup the AEM instance just install the service package first then try to install the other packages(code package, conf package, content package, user packages and others)

 

Thank You.

SheaNiAuthor
Level 2
June 23, 2021

We already have the service pack installed. I am not referring to dependencies provided by this. My situation is when I add maven dependencies, perhaps ones I have created myself, to the project.

shelly-goel
Adobe Employee
Adobe Employee
June 26, 2021

@sheani Are these all external dependencies and not provided by AEM? You can check each of these dependencies if they are already provided in /system/console/depfinder if you find an existing bundle, note the version and use this same version in your pom.xml dependencies section also add the scope as provided. This way you can reduce a lot of exports.