We are building FlashBuilder projects as part of continuous integration via ANT scripts. It looks something like this:
<target name="main" description="Build all flex projects">
<fb.exportReleaseBuild project="ProjectA" destdir="somedir" />
</target>
And a .bat file that runs FlashBuilderC with standard parameters:
--launcher.suppressErrors -noSplash -application org.eclipse.ant.core.antRunner -data %WORKSPACE% -file "buildFlexContents.xml" main
So far this has worked great with FlashBuilder 4 and 4.6, but when we updated to 4.7, the following started to happen (parts of the .log file):
!SESSION 2014-04-07 13:25:58.288 -----------------------------------------------
eclipse.buildId=M20110909-1335
java.version=1.6.0_31
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Framework arguments: -application org.eclipse.ant.core.antRunner -file buildFlexContents.xml main
Command-line arguments: -os win32 -ws win32 -arch x86_64 -application org.eclipse.ant.core.antRunner -data C:\workspace -file buildFlexContents.xml main
!ENTRY org.eclipse.core.resources 2 10035 2014-04-07 13:25:59.562
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.
!ENTRY org.eclipse.osgi 4 0 2014-04-07 13:26:02.478
!MESSAGE An error occurred while automatically activating bundle com.adobe.flexbuilder.codemodel (28).
!STACK 0
org.osgi.framework.BundleException: Exception in com.adobe.flexbuilder.codemodel.CMCoreActivator.start() of bundle com.adobe.flexbuilder.codemodel.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextIm pl.java:734)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:6 83)
..
Caused by: java.lang.NullPointerException
at com.adobe.flexbuilder.codemodel.internal.bridge.WorkspaceSpecification.getStateLocation(W orkspaceSpecification.java:157)
at com.adobe.flexbuilder.codemodel.internal.bridge.WorkspaceSpecification.getFileInStateLoca tion(WorkspaceSpecification.java:149)
..
!ENTRY org.eclipse.osgi 4 0 2014-04-07 13:26:02.482
!MESSAGE An error occurred while automatically activating bundle com.adobe.flexide.codemodel.bridge (100).
!STACK 0
org.osgi.framework.BundleException: Exception in com.adobe.flexide.codemodel.internal.bridge.CMBridgeActivator.start() of bundle com.adobe.flexide.codemodel.bridge.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextIm pl.java:734)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:6 83)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
...
Caused by: java.lang.NoClassDefFoundError: com/adobe/flexbuilder/codemodel/metadata/IMetadataManager
at com.adobe.flexide.codemodel.internal.bridge.CMBridgeActivator.start(CMBridgeActivator.jav a:50)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:7 11)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextIm pl.java:702)
... 74 more
Caused by: org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundExce ption: An error occurred while automatically activating bundle com.adobe.flexbuilder.codemodel (28).
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLa zyStarter.java:122)
...
!ENTRY org.eclipse.osgi 4 0 2014-04-07 13:26:02.742
!MESSAGE Application error
!STACK 1
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
Caused by: buildFlexContents.xml:8: java.lang.NoClassDefFoundError: com/adobe/flexbuilder/codemodel/common/CMFactory
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:116)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:390)
I have tried recreating the workspace, and changing -vm JDK paths to try with 1.7 to no avail.
Funny part about this is, that it works with FlashBuilder.exe (inside the GUI), but not with FlashBuilderC from the commmand line.
Any ideas why it can't find this class?