Eclipse Indigo with Flash Builder 4.7插件不能仅使用Apache Flex SDK Adob​​e 4.6

时间:2013-12-29 22:02:46

标签: eclipse flex flexbuilder eclipse-indigo

我已经在Eclipse Indigo JEE中安装了Flash Builder 4.7插件(两者都是64位版本) 我可以使用内置的Adobe Flex SDK 4.6构建灵活或空中项目而没有任何问题,但在切换到Apache SDK后(我尝试使用4.9和4.11),我的编译器给了我一个错误:

An internal build error has occurred. See the error log for more information.   Unknown Flex Problem

错误记录

eclipse.buildId=M20120208-0800
java.version=1.7.0_05
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product

This is a continuation of log file C:\dev\ws_3.7\.metadata\.bak_0.log
Created Time: 2013-12-29 21:12:24.581

Error
Sun Dec 29 21:59:26 GMT 2013
Uncaught exception in compiler

java.lang.IllegalArgumentException: Comparison method violates its general contract!
    at java.util.TimSort.mergeHi(Unknown Source)
    at java.util.TimSort.mergeAt(Unknown Source)
    at java.util.TimSort.mergeCollapse(Unknown Source)
    at java.util.TimSort.sort(Unknown Source)
    at java.util.TimSort.sort(Unknown Source)
    at java.util.Arrays.sort(Unknown Source)
    at flex2.compiler.swc.SwcGroup.updateMaps(SwcGroup.java:281)
    at flex2.compiler.swc.SwcGroup.<init>(SwcGroup.java:67)
    at flex2.compiler.swc.SwcCache.getSwcGroup(SwcCache.java:109)
    at flex2.compiler.swc.SwcCache.getSwcGroup(SwcCache.java:91)
    at flex2.compiler.CompilerSwcContext.load(CompilerSwcContext.java:96)
    at flex2.tools.oem.Application.recompile(Application.java:1170)
    at flex2.tools.oem.Application.compile(Application.java:894)
    at flex2.tools.flexbuilder.BuilderApplication.compile(BuilderApplication.java:367)
    at com.adobe.flexbuilder.multisdk.compiler.internal.ASApplicationBuilder$MyBuilder.mybuild(ASApplicationBuilder.java:309)
    at com.adobe.flexbuilder.multisdk.compiler.internal.ASApplicationBuilder.build(ASApplicationBuilder.java:128)
    at com.adobe.flexbuilder.multisdk.compiler.internal.ASBuilder.build(ASBuilder.java:203)
    at com.adobe.flexbuilder.multisdk.compiler.internal.ASItemBuilder.build(ASItemBuilder.java:93)
    at com.adobe.flexbuilder.project.compiler.internal.FlexProjectBuilder.buildItem(FlexProjectBuilder.java:708)
    at com.adobe.flexbuilder.project.compiler.internal.FlexProjectBuilder.build(FlexProjectBuilder.java:412)
    at com.adobe.flexbuilder.project.compiler.internal.FlexIncrementalBuilder.build(FlexIncrementalBuilder.java:171)
    at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
    at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
    at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
    at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
    at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143)
    at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

我的配置:
适用于Java EE开发人员的Eclipse IDE
+ Flash Builder 4.7插件
+ GraniteDS Builder插件3.0.0

1 个答案:

答案 0 :(得分:4)

这是Java 1.7和Flex编译器的一个已知问题。看到: https://issues.apache.org/jira/browse/FLEX-33667

在eclipse.ini中添加-Djava.util.Arrays.useLegacyMergeSort = true可以解决问题。