0
votes

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

1
Did you try "Cleaning the project" after switching the SDK? - JeffryHouser
Yes i did. Still error. When restart eclipse, first build is fine, after next clean - error again. - Y Borys
Did you run the "configure SDK for FlashBuilder" script? I no longer use FlashBuilder, but I bet that script is there for a reason. - RIAstar
I have installed FlashBuilder 4.7 in which i can create an project with Apache Flex SDK 4.8 and later without any problem. The problem is in Eclipce Indigo + Flash Builder 4.7 plugin, which gives me an error if i use any SDK other then Abobe Flex 4.6 and lower. - Y Borys

1 Answers

4
votes

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.