我在Adobe Flash Builder中有这样的项目设置: (试图尽我所能说明)
基本上, GameProj 和 TitleProj 被编译到他们自己的SWF中。它们每个都有自己特定的源文件夹(src- nameofproject ),以及链接到 LoaderProj 使用的常用文件夹。
此外, GameProj 也引用 TitleProj 中的一些类,因此它还将源路径链接到Title自己的源文件夹( src-title) ,在这种情况下)。
然后, LoaderProj 被设置为“嵌入” gameproj.swf 和 titleproj.swf 作为ByteArrays,它加载在运行时(使用Loader.loadBytes()
)
但现在我想知道如何在IntelliJ IDEA中设置这个复杂的多项目场景?
我尝试将Flash Builder工作区导入IntelliJ,但是当我尝试配置项目结构设置时,它一直告诉我模块之间存在源文件夹冲突。
我怎样才能解决这个问题?我怎样才能以同样的方式编译它?
答案 0 :(得分:0)
抱歉,这不是您问题的实际答案,而是重新解决您的问题: 我实际上没有看到编译两个不同swfs的原因,并将它们嵌入第三个,如果LoaderProj.swf确实是你最后使用的唯一swf?
通过在几个swfs中包含相同的源文件夹src,src-title,您将重新编译相同类的2或3倍。它会花费你更多的编译时间,更多的编译(3个调用)和更复杂的项目,在最终的swf中更多的大小,如果你碰巧嵌入旧版本的子版本,可能不同步的相同类的几个定义swfs,这可能会或不会覆盖根swf定义,具体取决于您在其中加载子swfs的ApplicationDomain。
此外,在从字节数组加载嵌入式swf时,添加运行时swf解码开销,为共享类的重复定义加载内存占用。
我宁愿保持简单,直接用所有源文件夹编译LoaderProj.swf,并通过简单的实例化替换Loader.loadBytes()。 new GameProjMainClass;
或new TitleProjMainClass;
(替换为子项目的实际当前主要类别)