Code changes not always showing when compiling

I'm in the progress of moving from Eclipse to IntelliJ to do my AS3 development. So far I'm more than happy, but there is some weird behaviour. Let me explain: In Eclipse I used to have multiple projects (which seem to be modules in IntelliJ, I've already learned that).These projects had dependencies on each other, all was working nicely. When I changed code in project A, than compiled project B, the changes were updated and showing. When I try to do the same thing in IntelliJ, code changes are not always reflected, it seems as if they were read from a cache somehow. Restarting IntellJ helps, but that surely cannot be the way to do it. Googling for this I have not found any hints, so I'm sure I'm missing something fundamental here. I tried this: Create a new project, add the Eclipse projects as modules to that project. Than I linked the libs and sources in project settings -> dependencies. That didn't work properly, so I tried to add the modules as content roots to the main project, but I think that's not the way to do it either. What I did now is move all the content of src folders of the different projects (or modules, to speak "intelliJ") into one src folder. I than created one project with one module and separate package folders in the src folder. This works. But I may not be able to reorganise the files that way all the time, especially when there are already other team members working in a given file structure. Any ideas?


Comment actions Permalink

Eclipse doesn't support AS3. Do you mean Flash Builder or FDT?

General suggestion is to look through the help topic "Language and Framework-Specific Guidelines | ActionScript and Flex". I'll answer your question here as well.

Flash module contains one or more Flash build configurations (BCs), each producing SWF or SWC. Probably in your case each module contains only one BC.
Each BC has its dependencies which include dependency on 3rd part libraries (SWCs or uncompiled 3rd party raw AS3 library) and dependencies on other own BCs.
So if you have one BC with output type Library and the other one with output type Application that uses classes from your own library - you need to configure dependency of app BC on lib BC.
Another example: you have main app and other SWFs that are loaded by main app in runtime. In this case BC that produces your main app must have output type Application, but other BCs that produce runtime-loaded SWFs must have output type: Runtime-Loaded Module (RLM). And you need to configure dependency of your main app BC on RLM BCs.

Please answer if  this helps.

By the way dependencies should have been imported automatically from Flash Builder project if you import all your projects (e.g. full workspace) in one shot. Can you please send me all your project files (.project, .actionScriptProperties, .flexProperties) and give details - what do you need to configure manually in IntelliJ IDEA after import and what problems do you have. I'd like to fix all importing issues if there are any. You can contact me by [alexander dot doroshko at jetbrains dot com]

Comment actions Permalink

I used FDT in Eclipse. Thanks for your quick response and helpful hints. For now it works nicely, but I might come back with a concret sample project if I run into the same issues again.

Cheers, Christian

Comment actions Permalink

Sure, feedback is always welcome.


Please sign in to leave a comment.