compile failures updating Flex IntelliJ 10 project to 11.1.1

I am trying to upgrade a Flex IntelliJ project from 10 to 11.1.1 and am tripping over a flash compile problem.  The project has two modules where one is dependant on the other.  I've added a build configuration to the libaray module for it to build a swc file and configured the other module's build configuration to use that library.  When built the flash compiler gives the error

[CXLiveFFO] (com.cithaeron.cxlive.utils:PagedList) abc bytecode decoding failed.

Web searches indicate this error indicatees is a mismatch between the flex sdks the swf and swc were compiled against.  Both modules are set to use flex sdk 4.5.0.  I've manually deleted the contents of the out directory, and invalidated the IntelliJ caches and still I get the flex compiler error.

Does IntelliJ/Flex compiler cache files somewhere that the IntelliJ invalidate cache option may not delete?

12 comments
Comment actions Permalink

Hi, first of all let's fix some terminology.
- In IntelliJ IDEA 11.1 at module level (I mean Flash module type) you configure only content roots and source folders.
- Flash module may have one or more Flash build configurations (BCs)
- All other settings including SDK, output type (*.swf or *.swc), dependencies, compiler options, etc. are configured at BC level (and may be completely different for different BCs of the same module.
- Obviously, there's no more module-on-module dependency, BC-on-BC is used instead.
- more informations at http://blogs.jetbrains.com/idea/2012/02/new-flex-project-setup/

So you need to configure 2 Flash modules. Module 1 should have one BC producing library (*.swc). Module 2 should have one BC producing application and should depend on BC from the first module. Probably your problem was that you have configured dependency on swc file as if it were 3rd party liberary instead of BC-on-BC. BC-on-BC dependency guarantees that all required *.swc files are up-to-date when the main app is being compiled.

0
Comment actions Permalink

The target BC (CXLiveFFO) in the second module does depend on the library BC (cxlivelib) from the first module.  The linkage is set to merged.  I'm using the 4.5.0 flex sdk, target player 10.2, Spark + MX component set.

I've included a screen shot of the Project Structure.



Attachment(s):
flexbuild-library-build-problem.jpg
0
Comment actions Permalink

All looks correct.
An you please attach cxlive.iml file?
Other option is to try to create a sample project, because I can't reproduce the issue.

0
Comment actions Permalink

attached is the cxlive.iml and CXLiveFFO.iml

the cxlive module has the cxlivelib build configuration

the CXLiveFFO module has the build configuration that depends on cxlivelib



Attachment(s):
CXLiveFFO.iml.zip
cxlive.iml.zip
0
Comment actions Permalink

I don't see anything suspicious in *.iml files.
com.cithaeron.cxlive.utils:PagedList class is located in the module cxlive, right?
Do you have any project level compiler options set? ('Project Defaults...' button at the Compiler Options tab of the build configuration)
Please try to switch compiler to mxmlc/compc at Settings | Compiler | Flex Compiler.
If still no luck please attach full content of the Messages tool window that includes compilation of both lib and app (use 'Export to text file' button at its left side to save content).

0
Comment actions Permalink

Correct the PagedList is in the cxlive module

the Project Compiler options are

Generated debuggable SWF:  enabled
Generated debuggable SWC:  enabled

everything else is greyed out

switching to mxmlc/compc did not solve the problem

Here is the information you requested

Information:Using built-in compiler shell, up to 4 parallel threads
See compiler settings at File | Settings | Compiler | Flex Compiler page
Information:[cxlivelib (module cxlive)] compc -load-config=F:/USER_TEMP/2/idea-126A7EB1-7C586243.xml
Information:[cxlivelib (module cxlive)] Loading configuration file F:\USER_TEMP\2\idea-126A7EB1-7C586243.xml
Information:[Flex (module cxlive)] mxmlc -load-config=F:/USER_TEMP/2/idea-126A7EB1-4CF4967A.xml
Information:[Flex (module cxlive)] Loading configuration file F:\USER_TEMP\2\idea-126A7EB1-4CF4967A.xml
Information:[cxlivelib (module cxlive)] D:\exchangea\Exchange\CXLive\main\Projects\CXLive\out\production\cxlive\cxlivelib.swc (214453 bytes)
Information:[cxlivelib (module cxlive)] Compilation successful
Information:[CXLiveFFO] mxmlc -load-config=F:/USER_TEMP/2/idea-126A7EB1-5A162BC0.xml
Information:[CXLiveFFO] Loading configuration file F:\USER_TEMP\2\idea-126A7EB1-5A162BC0.xml
Information:[Flex (module cxlive)] Required RSLs:
Information:[Flex (module cxlive)]     http://fpdownload.adobe.com/pub/swz/flex/4.5.0.20967/framework_4.5.0.20967.swz with 1 failover.
Information:[Flex (module cxlive)]     http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz with 1 failover.
Information:[Flex (module cxlive)]     http://fpdownload.adobe.com/pub/swz/flex/4.5.0.20967/spark_4.5.0.20967.swz with 1 failover.
Information:[Flex (module cxlive)]     http://fpdownload.adobe.com/pub/swz/flex/4.5.0.20967/sparkskins_4.5.0.20967.swz with 1 failover.
Information:[Flex (module cxlive)]     http://fpdownload.adobe.com/pub/swz/flex/4.5.0.20967/rpc_4.5.0.20967.swz with 1 failover.
Information:[Flex (module cxlive)]     http://fpdownload.adobe.com/pub/swz/flex/4.5.0.20967/mx_4.5.0.20967.swz with 1 failover.
Information:[Flex (module cxlive)]     http://fpdownload.adobe.com/pub/swz/flex/4.5.0.20967/advancedgrids_4.5.0.20967.swz with 1 failover.
Information:[Flex (module cxlive)] D:\exchangea\Exchange\CXLive\main\Projects\CXLive\out\production\cxlive\Cxlive.swf (290733 bytes)
Information:[Flex (module cxlive)] Compilation successful
Information:[CXLiveFFO] Encountered too many errors!
Information:[CXLiveFFO] Compilation failed
Information:Compilation completed with 113 errors and 0 warnings
Information:113 errors
Information:0 warnings
D:\exchangea\Exchange\CXLive\main\Projects\CXLive\out\production\cxlive\cxlivelib.swc
    Error:Error:[CXLiveFFO] (com.cithaeron.cxlive.utils:PagedList) abc bytecode decoding failed.
D:\exchangea\Exchange\CXLive\main\Modules\CXLiveFFO\src\components\ChartDisplay.mxml
    Error:Error:[CXLiveFFO] Access of undefined property __moduleFactoryInitialized.
    Error:Error:line (20)[CXLiveFFO] Access of undefined property expiryTimer.
    Error:Error:line (22)[CXLiveFFO] Access of undefined property _midContract.
    Error:Error:[CXLiveFFO] Access of undefined property _bindings.
    Error:Error:[CXLiveFFO] Access of undefined property _watchers.
    Error:Error:[CXLiveFFO] Access of undefined property _bindingsByDestination.
    Error:Error:[CXLiveFFO] Access of undefined property _bindingsBeginWithWord.
    Error:Error:[CXLiveFFO] Access of undefined property bindings.
    Error:Error:[CXLiveFFO] Access of undefined property watchers.
    Error:Error:[CXLiveFFO] Access of undefined property target.
    Error:Error:[CXLiveFFO] Access of undefined property watcherSetupUtilClass.
    Error:Error:[CXLiveFFO] Access of undefined property i.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property __moduleFactoryInitialized through a reference with static type components:ChartDisplay.
    Error:Error:line (28)[CXLiveFFO] Attempted access of inaccessible property _product through a reference with static type components:ChartDisplay.
    Error:Error:line (32)[CXLiveFFO] Access of undefined property contract.
    Error:Error:line (35)[CXLiveFFO] Attempted access of inaccessible property _topContract through a reference with static type components:ChartDisplay.
    Error:Error:line (36)[CXLiveFFO] Attempted access of inaccessible property _botContract through a reference with static type components:ChartDisplay.
    Error:Error:line (37)[CXLiveFFO] Access of undefined property age.
    Error:Error:line (43)[CXLiveFFO] Attempted access of inaccessible property _midContract through a reference with static type components:ChartDisplay.
    Error:Error:line (50)[CXLiveFFO] Access of undefined property delay.
    Error:Error:line (52)[CXLiveFFO] Access of undefined property delay.
    Error:Error:line (55)[CXLiveFFO] Access of undefined property delay.
    Error:Error:line (58)[CXLiveFFO] Attempted access of inaccessible property expiryTimer through a reference with static type components:ChartDisplay.
    Error:Error:line (70)[CXLiveFFO] Attempted access of inaccessible property _indexHistoryCache through a reference with static type components:ChartDisplay.
    Error:Error:line (76)[CXLiveFFO] Attempted access of inaccessible property _contractListCache through a reference with static type components:ChartDisplay.
    Error:Error:[CXLiveFFO] Access of undefined property temp.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property myChart through a reference with static type components:ChartDisplay.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property _ChartDisplay_DateTimeAxis1 through a reference with static type components:ChartDisplay.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property _ChartDisplay_LinearAxis1 through a reference with static type components:ChartDisplay.
    Error:Error:[CXLiveFFO] Access of undefined property result.
    Error:Error:[CXLiveFFO] Access of undefined property oldValue.
D:\exchangea\Exchange\CXLive\main\Modules\CXLiveFFO\src\CXLiveFFO.mxml
    Error:Error:line (51)[CXLiveFFO] Access of undefined property DEFAULT_MESSAGING_URL.
    Error:Error:line (52)[CXLiveFFO] Access of undefined property DEFAULT_SOAP_URI.
    Error:Error:[CXLiveFFO] Access of undefined property _skinParts.
    Error:Error:[CXLiveFFO] Access of undefined property __moduleFactoryInitialized.
    Error:Error:line (55)[CXLiveFFO] Access of undefined property _1459599807lastName.
    Error:Error:line (58)[CXLiveFFO] Access of undefined property _132835675firstName.
    Error:Error:line (61)[CXLiveFFO] Access of undefined property _2020648519loggedIn.
    Error:Error:line (64)[CXLiveFFO] Access of undefined property _2013207406contractListCache.
    Error:Error:line (67)[CXLiveFFO] Access of undefined property _988131283productCache.
    Error:Error:line (70)[CXLiveFFO] Access of undefined property _1444064918depthBookCache.
    Error:Error:line (73)[CXLiveFFO] Access of undefined property _624971306orderListCache.
    Error:Error:line (76)[CXLiveFFO] Access of undefined property _1154404684executionListCache.
    Error:Error:line (79)[CXLiveFFO] Access of undefined property _957875334notificationsCache.
    Error:Error:line (82)[CXLiveFFO] Access of undefined property _1637104134balanceCache.
    Error:Error:line (85)[CXLiveFFO] Access of undefined property _691203325indexValueCache.
    Error:Error:line (88)[CXLiveFFO] Access of undefined property _1723897536indexHistoryCache.
    Error:Error:[CXLiveFFO] Access of undefined property _CXLiveFFO_StylesInit_done.
    Error:Error:[CXLiveFFO] Access of undefined property _embed_mxml_images_cantorExchangeLogo_png_1224422560.
    Error:Error:[CXLiveFFO] Access of undefined property _bindings.
    Error:Error:[CXLiveFFO] Access of undefined property _watchers.
    Error:Error:[CXLiveFFO] Access of undefined property _bindingsByDestination.
    Error:Error:[CXLiveFFO] Access of undefined property _bindingsBeginWithWord.
    Error:Error:[CXLiveFFO] Access of undefined property bindings.
    Error:Error:[CXLiveFFO] Access of undefined property watchers.
    Error:Error:[CXLiveFFO] Access of undefined property target.
    Error:Error:[CXLiveFFO] Access of undefined property watcherSetupUtilClass.
    Error:Error:[CXLiveFFO] Access of undefined property i.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property __moduleFactoryInitialized through a reference with static type CXLiveFFO.
    Error:Error:line (105)[CXLiveFFO] Attempted access of inaccessible property messageUri through a reference with static type CXLiveFFO.
    Error:Error:line (107)[CXLiveFFO] Attempted access of inaccessible property messageUri through a reference with static type CXLiveFFO.
    Error:Error:line (111)[CXLiveFFO] Attempted access of inaccessible property soapUri through a reference with static type CXLiveFFO.
    Error:Error:line (113)[CXLiveFFO] Attempted access of inaccessible property soapUri through a reference with static type CXLiveFFO.
    Error:Error:line (122)[CXLiveFFO] Attempted access of inaccessible property connectionDialog through a reference with static type CXLiveFFO.
    Error:Error:line (130)[CXLiveFFO] Attempted access of inaccessible property soapUri through a reference with static type CXLiveFFO.
    Error:Error:line (131)[CXLiveFFO] Attempted access of inaccessible property messageUri through a reference with static type CXLiveFFO.
    Error:Error:line (136)[CXLiveFFO] Access of undefined property logonSequencer.
    Error:Error:line (159)[CXLiveFFO] Attempted access of inaccessible property firstName through a reference with static type CXLiveFFO.
    Error:Error:line (160)[CXLiveFFO] Attempted access of inaccessible property lastName through a reference with static type CXLiveFFO.
    Error:Error:line (161)[CXLiveFFO] Access of undefined property sessionId.
    Error:Error:line (162)[CXLiveFFO] Access of undefined property serverId.
    Error:Error:line (168)[CXLiveFFO] Access of undefined property username.
    Error:Error:line (169)[CXLiveFFO] Access of undefined property password.
    Error:Error:line (177)[CXLiveFFO] Attempted access of inaccessible property participantAccountId through a reference with static type CXLiveFFO.
    Error:Error:line (198)[CXLiveFFO] Attempted access of inaccessible property messageManager through a reference with static type CXLiveFFO.
    Error:Error:line (215)[CXLiveFFO] Access of undefined property downloadSequencer.
    Error:Error:line (229)[CXLiveFFO] Attempted access of inaccessible property loggedIn through a reference with static type CXLiveFFO.
    Error:Error:line (262)[CXLiveFFO] Attempted access of inaccessible property loggedIn through a reference with static type CXLiveFFO.
    Error:Error:line (279)[CXLiveFFO] Access of undefined property logoffSequencer.
    Error:Error:line (286)[CXLiveFFO] Attempted access of inaccessible property loggedIn through a reference with static type CXLiveFFO.
    Error:Error:line (306)[CXLiveFFO] Access of undefined property product.
    Error:Error:line (324)[CXLiveFFO] Access of undefined property menuLabel.
    Error:Error:line (326)[CXLiveFFO] Access of undefined property ordersDialog.
    Error:Error:line (333)[CXLiveFFO] Access of undefined property executionsDialog.
    Error:Error:[CXLiveFFO] Access of undefined property temp.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property outsideContainer through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property headingContainer through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property headingLoginInfo through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property usernameField through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property passwordField through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property loginButton through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property headingLoggedIn through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property _CXLiveFFO_Label3 through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property _CXLiveFFO_Label4 through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property menuBar through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property contentArea through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property topPart through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property productView through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property chartDisplay through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property arrowDisplay through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property topRight through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property balancesView through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property bookView through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property tradingView through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property quickOrderEntry through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Attempted access of inaccessible property notificationsView through a reference with static type CXLiveFFO.
    Error:Error:[CXLiveFFO] Access of undefined property result.
    Error:Error:[CXLiveFFO] Access of undefined property selector.
    Error:Error:[CXLiveFFO] Access of undefined property conditions.
    Error:Error:[CXLiveFFO] Access of undefined property condition.
    Error:Error:[CXLiveFFO] Access of undefined property style.
    Error:Error:[CXLiveFFO] Access of undefined property oldValue.

0
Comment actions Permalink

Thank you! I tried to reproduce and cofigured the project based on your *.iml files with several fake AS and MXML files, but all works fine to me. Looks like the cause is somewhere in the code. Is it possible to create a sample project to reproduce the issue? Or may be you can send me source code of the classes mentioned in the error messages: com.cithaeron.cxlive.utils:PagedList and ChartDisplay.mxml? Or cxlivelib.swc file? You can contact me directly via email: alexander dot doroshko at jetbrains dot com.

0
Comment actions Permalink

We were able to isolate the compiler problem.

The PagedList.as originated from this github project

https://github.com/jamesward/DataPaging

In the comments section of this blog post people posted that the Vector class is causing compiler problems

http://www.jamesward.com/2010/10/11/data-paging-in-flex-4/

http://www.jamesward.com/2010/10/11/data-paging-in-flex-4/

Change it to read like this rather than Vector:
.
.
.
    /**
     *  @private
     *  The IList's items.
     */
    private const data:Array = new Array();
.
.


So we made the same change same in our code and the IntelliJ compiler problems went away

original code


   /**
     *  @private
     *  The IList's items.
     */
    private const data:Vector.<*> = new Vector.<*>();


updated code

/**
     *  @private
     *  The IList's items.
     */
    private const data:Array = new Array();


Thanks for looking into this for me

0
Comment actions Permalink

I hate to dig up an old post like this.. but has the Vector AS type been fixed yet? I'm running IntelliJ 13 and it's still complaining about it.

My simple code:

testVector = new Vector.<int>();
var length_of_vector:uint = testVector.length;

It's saying there is no length property on the vector. Specifically the error is: "Static member not accessible." Of course this works great in flash builder but I'd really like to see this working properly in intellij.

Thanks for any and all help.
Jake



Attachment(s):
Screen Shot 2013-11-19 at 12.01.07 PM.png
0
Comment actions Permalink

As a really poor workaround.. this can be employed:

testVector['push']("hello");
trace(testVector['length']);

instead of the native:

testVector.push("hello");
trace(testVector.length);

Thanks,
Jake

0
Comment actions Permalink

Hi Jake,
you chose the wrong thread :)
Bug with Vector methods resolve was introduced only 2 weeks ago only in early access release and it is already fixed. New EAP with the fix will be available in few hours: http://confluence.jetbrains.com/display/IDEADEV/IDEA+13+EAP.

0
Comment actions Permalink

Perfect thank you for the update.

Sorry for the post to the wrong thread.

Jake

0

Please sign in to leave a comment.