Mariana, existe otro modulo que este llamando esta misma clase, o al menos con el mismo nombre/package? La separacion que se necesita aqui ya sea usando applicationDomain o declarando la clase en conflicto en la aplicacion principal se necesita para elimiar ambiguedad entre clases con el mismo nombre. Similar al caso de package name en las clases. Dos clases pueden llamarse igual dentro de un mismo proyecto, pero lo que las distingue es el package name.
En el caso de Modules es aun mas estricto, ya que en este caso, hasta el package name puede ser el mismo en diferentes Modules. Por eso la necesidad de indicar si se trata de la misma clase o no, usando el applicationDomain. Dado que los Modules funcionan en un esquema de Singletons, cuando uno se carga por primera vez en la aplicacion principal, esta guarda una referencia y se la asigna exclusivamente a ese modulo que la cargo por primera vez. Si otro modulo trata de cargar esta misma clase sin indicar a que dominio pertenece, Flex asume que se intenta usar una clase diferente, pero que ya existe en la clase principal.
Para hacer la division o elimiar el conflicto se pueden usar dos tecnicas.
1) Si la clase es la misma en todos los modulos a cargar. Se debe importar la clase en la aplicacion principal, la que carga los modulos, y se debe declarar una instancia. Despues de eso, todo modulo que se cargue, usara esa definicion. Si existe, uno que no sea el caso, se debe cargar con un applicationDomain nuevo.
import com.holaflex.ClaseA;
private var myClaseA:ClaseA = new ClaseA();
2. Cuando se sabe que el modulo a cargar, usa la misma clase de otros modulos que se cargan en la aplicacion principal, se puede indicar en el ModuleLoader con ModuleManager.applicationDomain = ApplicationDomain.currentDomain.
La preferencia cae en la combinacion de Modules y su naturaleza.