2011-02-23 9 views
0

私は、FlexアプリケーションをコンパイルするためにAntを実行していますが、Windowsコマンドラインで実行するとビルドが失敗します。私のチームの他の人は、MacとLinuxの下で同じビルドを正常に実行できます。Windowsでコンパイルすると、MXMLCがjava.lang.NullExceptionPointerをスローする

これは、コマンドプロンプトに表示されるエラーです:

compile-main: 
[mxmlc] Loading configuration file C:\Program Files (x86)\Adobe\Adobe Flash Builder Burrito\sdks\3.5.0\frameworks\flex-config.xml 
[mxmlc] Error: null 
[mxmlc] 
[mxmlc] java.lang.NullPointerException 
[mxmlc]  at flex2.compiler.CompilerSwcContext.createSource(CompilerSwcContext.java:353) 
[mxmlc]  at flex2.compiler.CompilerSwcContext.getSource(CompilerSwcContext.java:337) 
[mxmlc]  at flex2.compiler.API.findDefinition(API.java:2685) 
[mxmlc]  at flex2.compiler.API.resolveMultiName(API.java:3350) 
[mxmlc]  at flex2.compiler.API.resolveExpression(API.java:3193) 
[mxmlc]  at flex2.compiler.API.batch2(API.java:399) 
[mxmlc]  at flex2.compiler.API.batch(API.java:1117) 
[mxmlc]  at flex2.compiler.API.compile(API.java:1290) 
[mxmlc]  at flex2.compiler.API.compile(API.java:1210) 
[mxmlc]  at flex2.tools.Compiler.mxmlc(Compiler.java:275) 
[mxmlc]  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
[mxmlc]  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
[mxmlc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
[mxmlc]  at java.lang.reflect.Method.invoke(Method.java:597) 
[mxmlc]  at flex.ant.FlexTask.executeInProcess(FlexTask.java:283) 
[mxmlc]  at flex.ant.FlexTask.execute(FlexTask.java:225) 
[mxmlc]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) 
[mxmlc]  at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source) 
[mxmlc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
[mxmlc]  at java.lang.reflect.Method.invoke(Method.java:597) 
[mxmlc]  at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
[mxmlc]  at org.apache.tools.ant.Task.perform(Task.java:348) 
[mxmlc]  at org.apache.tools.ant.Target.execute(Target.java:390) 
[mxmlc]  at org.apache.tools.ant.Target.performTasks(Target.java:411) 
[mxmlc]  at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) 
[mxmlc]  at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) 
[mxmlc]  at org.apache.tools.ant.Project.executeTargets(Project.java:1251) 
[mxmlc]  at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:442) 
[mxmlc]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) 
[mxmlc]  at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source) 
[mxmlc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
[mxmlc]  at java.lang.reflect.Method.invoke(Method.java:597) 
[mxmlc]  at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
[mxmlc]  at org.apache.tools.ant.Task.perform(Task.java:348) 
[mxmlc]  at org.apache.tools.ant.Target.execute(Target.java:390) 
[mxmlc]  at org.apache.tools.ant.Target.performTasks(Target.java:411) 
[mxmlc]  at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) 
[mxmlc]  at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) 
[mxmlc]  at org.apache.tools.ant.Project.executeTargets(Project.java:1251) 
[mxmlc]  at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:442) 
[mxmlc]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) 
[mxmlc]  at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source) 
[mxmlc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
[mxmlc]  at java.lang.reflect.Method.invoke(Method.java:597) 
[mxmlc]  at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
[mxmlc]  at org.apache.tools.ant.Task.perform(Task.java:348) 
[mxmlc]  at org.apache.tools.ant.Target.execute(Target.java:390) 
[mxmlc]  at org.apache.tools.ant.Target.performTasks(Target.java:411) 
[mxmlc]  at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) 
[mxmlc]  at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) 
[mxmlc]  at org.apache.tools.ant.Project.executeTargets(Project.java:1251) 
[mxmlc]  at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:442) 
[mxmlc]  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) 
[mxmlc]  at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source) 
[mxmlc]  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
[mxmlc]  at java.lang.reflect.Method.invoke(Method.java:597) 
[mxmlc]  at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
[mxmlc]  at org.apache.tools.ant.Task.perform(Task.java:348) 
[mxmlc]  at org.apache.tools.ant.Target.execute(Target.java:390) 
[mxmlc]  at org.apache.tools.ant.Target.performTasks(Target.java:411) 
[mxmlc]  at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) 
[mxmlc]  at org.apache.tools.ant.Project.executeTarget(Project.java:1368) 
[mxmlc]  at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 
[mxmlc]  at org.apache.tools.ant.Project.executeTargets(Project.java:1251) 
[mxmlc]  at org.apache.tools.ant.Main.runBuild(Main.java:809) 
[mxmlc]  at org.apache.tools.ant.Main.startAnt(Main.java:217) 
[mxmlc]  at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) 
[mxmlc]  at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109) 

BUILD FAILED 
D:\workspaces\Adobe Flash Builder Burrito Preview\FlexProjects\build.xml:10: The following error occurred while executing this line: 
D:\workspaces\Adobe Flash Builder Burrito Preview\FlexProjects\AdToolSSP\build.xml:33: The following error occurred while executing this line: 
D:\workspaces\Adobe Flash Builder Burrito Preview\FlexProjects\AdToolSSP\build\build.xml:18: The following error occurred while executing this line: 
D:\workspaces\Adobe Flash Builder Burrito Preview\FlexProjects\AdToolSSP\build\compileproject.xml:39: mxmlc task failed 

Total time: 21 seconds 

これはcompileproject.xmlビルドファイル内の特定のターゲットです:

<target name="compile-main" description="Compila la aplicación principal"> 
    <mxmlc allow-source-path-overlap="${compiler.allow_overlap}" 
      debug="${compiler.debug}" 
      file="${app.main.mxml}" 
      fork="${compiler.fork}" 
      keep-generated-actionscript="${compiler.keep_gen_as}" 
      link-report="${flex.output.dir}/report.xml" 
      locale="${compiler.locale}" 
      maxmemory="256m" 
      optimize="${compiler.optimize}" 
      output="${app.main.swf}" 
      services="${flex.services.dir}/services-config.xml" 
     > 

     <!-- Get default compiler options --> 
     <load-config filename="${FLEX_HOME}/frameworks/flex-config.xml" /> 
     <!-- List of path elements that form the roots of ActionScript class hierarchies --> 
     <source-path path-element="${FLEX_HOME}/frameworks" /> 
     <!-- Path to the locales --> 
     <source-path path-element="${flex.resources.dir}/locale/{locale}" /> 
     <!-- List of SWC files or directories that contain SWC files --> 
     <compiler.library-path dir="${flex.libs.dir}" append="true"> 
      <include name="**/as3-signals-v0.6.swc" /> 
      <include name="**/datavisualization_rb.swc" /> 
      <include name="**/datavisualization.swc" /> 
      <include name="**/GenAocCairngorm.swc" /> 
      <include name="**/GenAocLib.swc" /> 
     </compiler.library-path> 
     <compiler.library-path dir="${flex.src.dir}/assets" append="true"> 
      <include name="**/*.swc" /> 
     </compiler.library-path> 

    </mxmlc> 
</target> 

すべてのトークンは、対応するbuild.propertiesに設定されていますフィルタの.propertiesファイル(そして、私が前に言ったように、それはmacとlinuxの下で完全にコンパイルされます)。

Windows版は7 Ultimateです.FLEX_HOMEは、Flex SDK 3.5(Adobe Flash Builder Burritoに付属の3.5.0.12683ビルド)の環境変数として設定されています。 $ {compiler.fork}がfalseに設定されているため、SDKとソースファイルが別の論理ドライブに存在する問題を回避できます。

すべての手がかりは(大いに)高く評価されます!

+0

SWCの1つに問題があるようですが、1つずつ削除してみてください。 –

+0

ありがとう!あなたは正しい方向に私を指差しました!まだ見ていますが、GenAocCairngorm.swc(Antビルドの前のステップでそのフォルダに生成されコピーされています)と関係があります。そのライブラリプロジェクトのロケールファイルに関連している可能性があります。 よろしくお願い致します。) –

答えて

0

"ブリトープレビュー"の問題でしょうか?あなたはhttp://bugs.adobe.comにバグとして報告することができます。

+0

ありがとうございました! 私は二重チェックしましたが、そのような場合には問題はありません。私はhttp://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3からSDKを直接ダウンロードしました(私は3.6夜間のビルドも試しました)、このSDKを指すようにFLEX_HOMEトークンを修正しました(そしてBurritoプレビューに含まれているものではありません)。 権限の問題ではありません(私はすべてをユーザーのDocumentsフォルダに移動しました)。 ロケールパラメータをen_USに変更しました(ただし、手動で編集したes_ESとpt_BRはFBでコンパイルするとシームレスに動作します)。 まだ、同じjava.lang.NullPointerExceptionです。 –

関連する問題