Expand my Community achievements bar.

SOLVED

Using AEM with Eclipse and CRXDE

Avatar

Level 4

Hey all,

I was wondering if there was a way to connect CRXDE to our source code that we actively develop on using eclipse.

Our team has an maven build for our AEM source code that we build and upload to package managed to use with our localhost AEM instance. However, if someone was developing using CRXDE and the source code gets built/uploaded without their changes, their changes in CRXDE will get overwritten.

We're fine-tuning our development process to try to ensure this doesn't happen, but I am wondering if there is a way to have both environments connected to the same codebase. So if I make a change in CRXDE, it uploads the local version of the file on my disk and vise versa.

Is this possible to do? Or is there only one way to build in eclipse and upload our code?

Thanks

Brendan

1 Accepted Solution

Avatar

Correct answer by
Level 10

As far as sync in code under /apps is concerned, you can use Eclipse/ intellij / Brackets with different extensions and plugins with all support.

So you will basically developing in these IDE and any changes made will be pushed to your crx repository automatically.

When it some to bundle, you have to deploy you changes via build process.

If you use any of Eclipse, intellij, Brackets IDE for java + /apps development, I don't see any issue with code overwritten but yeah if you mix these with crxde ...that will create problem. One more benefit with these IDE is, if by any chance you make a change in CRX, you can import in filesystem...but yea crx to filesystem has to be done manually via options in plugin (like import from server/crx). It won't sync automatically.

CRXDE does not offer a proper platform for development.

View solution in original post

7 Replies

Avatar

Level 2

It seems like you are talking about a shared "development" environment. It's hard to achieve what you are talking about since there will be no communication between team members on what changed. The best way to do this is to use Git + Continuous Deployment (CD) (example: jenkins) where changes are deployed to dev as soon as they are committed to git and commit history serves as communication between team members so everyone always has the latest source-code.

As far as good Git branching models, I'd recommend gitflow

Avatar

Level 4

I will check that out for sure.

As far as CRXDE, if someone makes the changes in CRXDE before the source code is there any way to sync those changes?

Avatar

Level 10

Also - are you talking about modifying Java code in CRXDE lite - that is not recommended at all. Sure you can modify scripts and HTL code - but not Java code.

Avatar

Level 4

No modifying java code really - I can't even view it in CRXDE.

I was mostly asking if there was a way to modify components and such from CRXDE that would auto update the source code on my file system.

For my screenshots below, those two folders (eclipse and crxde), have different files if you make changes to one but not the other. Is it possible for CRXDE to use the same source code from my local disk?

1401656_pastedImage_0.png

1401657_pastedImage_1.png

Avatar

Correct answer by
Level 10

As far as sync in code under /apps is concerned, you can use Eclipse/ intellij / Brackets with different extensions and plugins with all support.

So you will basically developing in these IDE and any changes made will be pushed to your crx repository automatically.

When it some to bundle, you have to deploy you changes via build process.

If you use any of Eclipse, intellij, Brackets IDE for java + /apps development, I don't see any issue with code overwritten but yeah if you mix these with crxde ...that will create problem. One more benefit with these IDE is, if by any chance you make a change in CRX, you can import in filesystem...but yea crx to filesystem has to be done manually via options in plugin (like import from server/crx). It won't sync automatically.

CRXDE does not offer a proper platform for development.

Avatar

Level 4

Thanks for all your guy's help! I'll follow that tutorial it looks like exactly what we need