Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

AEM 6.3 - Maven build is successful but still doesn't install content

Avatar

Level 4

I am facing this weird issue where the maven build is successful but the content inside /apps,/etc, /conf doesn't gets installed. These are some of the use cases when this issue occurs:

1) Create a component in CRXde, export it to local filesystem using vlt up. Delete the component in CRXde. Do a maven build. No component present in CRXde. Although it is seen in the zip file created under target folder.

2) Checkout the project from git on a machine that doesn't have the project setup. Do a maven build. Only the folder structure will be seen in CRXde.

Some information about the project

-- Created a new project using lazybones

-- No changes to pom.xml made yet

-- Maven verison 3.5.0 and AEM 6.3 is being used.

Thanks in advance

1 Accepted Solution

Avatar

Correct answer by
Level 10

Hi,

I am not opposing File Vault but the best way to sync AEM and Eclipse is using AEM Eclipse Plugin.

Yes, Look here : Getting Started with AEM Sites Part 2 - Creating a Base Page and Template

There you will see how to sync between AEM and Eclipse using AEM Eclipse Plugin.

Hope this helps!!

~Ratna

View solution in original post

23 Replies

Avatar

Level 10

Hi,

Yes Scott is right. We have the article that shows how to create the project using Lazybones and build using Maven: Developing your first Experience Manager 6.3 Components

Also, Eclipse plugin is very good to communicate with experience manager as described in the article.

Hope this helps!!

~Ratna.

Avatar

Level 4

Thank you for the response. I have followed this article before. Haven't been able to find anything useful yet related to the issue I am facing. Please let me know if you think I am missing something here.

Avatar

Level 10

Are you able to get the article successfully completed? Or you can get this article working - but cannot apply the same concept to your project?

Avatar

Level 4

Thank you for the response. I have created the project using the same steps. Although, I would expect the build process to install all the content in CRXde. Currently, only the project folder structure is being deployed to the CRXde, all the components, clientlibs, editable templates etc, none of them gets installed to CRXde. This is the issue I am facing. When I do the Maven build through eclipse/cmd prompt, all it does is it install the project structure with folders minus any components, templates, clientlibs etc.

Avatar

Level 10

When you import from Eclipse into AEM JCR - you should be seeing:

GenertaedFiles.png

Avatar

Level 4

I have completed the article successfully and used lazybones to create the project. Normally, I create the components, clientlibs etc in CRXde and then export them to local filesystem/eclipse and commit it to GIt. I checked out the project from Git on a different machine, did a maven build in the hopes of seeing all my components/templates etc in CRXd which didn't happen. Only the project structure with empty folders got deployed to CRXde.

                                                                 To look further into the issue, I created a test component in CRXde, exported it into eclipse using vlt up and then ran a build again only to find out that the test component wasn't deployed to CRXde. Although, I could see that test component in the zip created by the maven build.

Avatar

Community Advisor

Hi,

Try the below steps and let me know

a) Create the project in your local using Lazybone and get the project installed in AEM instance

b) Now check in crxde AEM for the project created with required folders(like components,config,src,install,templates)

c) Now create the required components and templates using crxde.

d) Now using Eclipse Vault Plugin do vault import, so that all your components and templates gets synched up with local.

e) Now you can modify any component if needed in eclipse and do a lazy bone build and install to AEM.

I suspect the reason why you dont see components inside crxde is may be you are not including the components in filter.xml appropriately.I too had same kind of issue once and started using eclipse vault plugin which made life easy for synching to local and build back to AEM.

Hope this helps.

Regards,

Raja

Avatar

Level 10

Ratna is testing this again - he has many times in past. He will update this thread soon,

Avatar

Level 4

Hi Rajashankar,

Here is the filter.xml

<?xml version="1.0" encoding="UTF-8"?>

<workspaceFilter version="1.0">

    <filter root="/apps/aem-site"/>

    <filter root="/apps/sling/servlet/errorhandler"/>

    <filter root="/conf/aem-site" mode="merge"/>

    <filter root="/etc/clientlibs/aem-site"/>

</workspaceFilter>

Do you think I am missing something here ?

I am using Eclipse neon, and the eclipse vault plugin doesn't work on this version. So, I am using the filevault through command line to export the component to local filesystem. Can you please let me know what version of eclipse you are using ?

Also, even if somehow I get the vault plugin to work, it is expected that the maven build installs everything. I am not sure if this is filevault messing things up or something else.

Avatar

Level 10

Hi,

Yes, Raja is correct. See what is present in filter.xml, whether you have included /apps, /etc,

However, I am retesting this article Developing your first Experience Manager 6.3 Components and let you know my findings.

Note: I highly recommend AEM Eclipse plugin for syncing with AEM and Eclipse or vice versa(Vault is very old)

Thanks,

Ratna

Avatar

Level 4

Here is what would describe my problem:

eclipse.PNG

Did the maven build and here is what I find in CRXde

crx.PNG

There are no components inside content and structure folders.

This is how the filter.xml looks like:

filter.PNG

Avatar

Level 10

Hi,

It Works!! Please check the below screenshots. Please do follow the article and it will work like charm.

In Eclipse:

Test1.PNG

In CRXDE After building using Maven or using AEM plugin in Eclipse.Test2.PNG

~Ratna.

Avatar

Level 10

Follow the exact directions as Ratna specified. Follow the articel and got those components deployed. Then do the same thing for your components.

Avatar

Level 4

Thank you Ratna.  I have done this too and I am aware that it works. However, once you configure the filevault with this project using vlt --credentials admin:admin checkout -f ../META-INF/vault/filter.xml --force http://localhost:4502/crx

things change.

Do you suggest I should stop using fievault completely ? How would you advise I should export the components created in CRXde to eclipse or the local filesystem ?

Avatar

Level 10

Eventually Filevault plugin will work!!

I will have a look on Filevault and get back to you with my findings!!

Thanks,

Ratna

Avatar

Level 10

Use Eclipse - not Vlt - to sync code.

Avatar

Correct answer by
Level 10

Hi,

I am not opposing File Vault but the best way to sync AEM and Eclipse is using AEM Eclipse Plugin.

Yes, Look here : Getting Started with AEM Sites Part 2 - Creating a Base Page and Template

There you will see how to sync between AEM and Eclipse using AEM Eclipse Plugin.

Hope this helps!!

~Ratna

Avatar

Level 4

Thank you Scott. WKND tutorial is the one I am trying to develop.