我刚刚将ApacheFlex(4.12.1)、As3CoreLib、OSMF和Playerglobal14_0的最新sdk添加到我的库中,并设置了一个简单的flash“HelloWorld”项目(默认)。代码检查没有显示任何错误。
我在ubuntu 14.04lts上使用intellij idea 13.1.3
但是,使用内置shell编译失败
Error:[TestFlex]: java.net.SocketTimeoutException: Accept timed out
Error:[TestFlex]: Exception in thread "main"
Error:[TestFlex]: java.lang.NoClassDefFoundError: flex2/tools/VersionInfo
at com.intellij.flex.compiler.FlexCompiler.<clinit>(FlexCompiler.java:19)
Caused by: java.lang.ClassNotFoundException: flex2.tools.VersionInfo
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 1 more
用mxml/compc编译失败
Error:[TestFlex]: Could not find or load main class flex2.tools.Mxmlc
有什么想法吗?
最佳答案
我可以提供一些关于从何处开始查找问题的信息,这可能是在您的系统上安装了不完整的sdk。
您提到的两个缺少的类都在mxmlc.jar中,intellij idea希望在sdk/lib文件夹中找到mxmlc.jar。如果缺少mxmlc.jar,您将看到以下错误:
java.lang.NoClassDefFoundError: flex2/tools/VersionInfo
使用apache flex sdk安装程序,可以确保sdk的完整副本:
http://flex.apache.org/installer.html
IntelliJ IDEA在项目结构的“平台设置-->sdk”下指定的flex/air sdk主路径中查找。项目结构ui位于intellij idea的“文件”菜单下。
关于项目sdk的intellij文档站点:
https://www.jetbrains.com/idea/help/configuring-global-project-and-module-sdks.html