Refresh Metadata does not work with nested folders and Retrieve works incorrectly
I have project with source in SFDX format, setup against sandbox (connection was made through sfdx auth:web:login). In the project, I’ve organized classes into dedicated folders - ex:
forceApp/main/default/classes/integrations/SomeIntegration/SomeIntegrationClass.cls
Refresh Metadata does not do anything if done on this class. The message says “No components were refreshed”. If I retrieve metadata and select this class to retrieve, it will appear as new file in forceApp/main/default/classes/SomeIntegrationClass.cls
This is also problem if the code is in separate package ex:
- forceApp/main/default/classes
- forceApp/commons/triggerHandler/classes
I’d expect Illuminated Cloud to find the location of the class and retrieve/refresh it correctly. Class should be retrieved into main/default/classes only if it does not exist in the project at all.
Kind Regards
Comments (6)
-
repo owner -
reporter forceApp/commons
was added as source root. I’ve tried addingforceApp/commons/triggerHandler
and a few other combinations but it does not help.I can see that the files are recognized as sources though, because for ex. “Show xml files” setting is applied to them.
-
repo owner Okay. That rules out the potential simple solution. Please enable debug logging for Metadata Retrieval, reproduce the issue, and email the resulting
idea.log*
files to support@illuminatedcloud.com for review. -
reporter Done, the log was sent.
Thank you for looking into this.
-
reporter @Scott Wells
FYI: I’ve submitted this also as bug in sfdx cli. sfdx retrieve does not work correctly right now, as it always places retrieved files in “main/default” folder.
https://github.com/forcedotcom/cli/issues/238
Kind regards,
-
repo owner - changed status to resolved
Issue tracker grooming. If this is still an issue, please feel free to reopen, ideally with a concrete reproduction scenario.
- Log in to comment
Have you added
forceApp/commons/triggerHandler
as a source root? If not, is the problem resolved by doing so? You can add it as a source root by right-clicking on that folder and clicking Mark Directory as>Source root.