Question

I have installed Flash Builder 4.7 plugin into Eclipse Indigo JEE (both of them 64 bit version).
I can build flex or air projects with built in Adobe Flex SDK 4.6 without any problems, but after switch project to Apache SDK (i was trying 4.9 and 4.11), my compiler gives me an error:

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

Error Log

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)

My configuration:
Eclipse IDE for Java EE Developers
+ Flash Builder 4.7 plugin
+ GraniteDS Builder plugin 3.0.0

Was it helpful?

Solution

This is a know issue with Java 1.7 and the Flex compiler. See: https://issues.apache.org/jira/browse/FLEX-33667

Adding -Djava.util.Arrays.useLegacyMergeSort=true to eclipse.ini should solve the issue.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top