3

几个月来,我一直在 Mac OS X 10.8.2 上使用 Flash Builder 4.5 和 Flex SDK 3.5B。这并不是一次完美的体验——该软件有很多错误——但总的来说,它直到最近才正常工作。

我们的应用程序包括两个 Flash Builder“项目”,其中一个引用另一个。每当我们克隆存储库时,都需要更新.project主项目的文件以包含辅助项目的新路径。

在一切崩溃之前我做的最后一件事是将包含项目的文件夹移动到新位置。正如预期的那样,当我打开 Flash Builder 时,它抱怨找不到我的项目文件,并且在“包资源管理器”视图中它们都被标记为不可访问。我没有从我的工作区中删除无法访问的项目,但我尝试从新位置重新导入主项目。这标志着我第一次看到从那以后一直困扰着我的对话:

“构建工作区”遇到了问题。 构建过程中发生错误。 详细信息:在项目“配置器”上运行“Flex”时出错。 java.lang.NullPointerException

“问题”视图告诉我参考错误日志......

错误(2 项):发生内部构建错误。 有关详细信息,请参阅错误日志。

...但是错误日志是空的!

“包资源管理器”视图没有改变(新项目未列出),所以我决定再次尝试导入。当我选择项目目录时,Flash Builder 说我无法导入它,因为该项目已经在工作区中。“但是包资源管理器说它不是……如果我重新启动 Flash Builder,它可能会让我再试一次,”我想。我想错了。当我重新启动时,这是我看到的:

无法创建视图:引发了意外异常。

java.lang.NullPointerException
    at com.adobe.flexbuilder.util.PathUtils.resolveLocaleInSourcePath(PathUtils.java:297)
    at com.adobe.flexbuilder.project.actionscript.internal.ActionScriptProject.getProjectPath(ActionScriptProject.java:713)
    at com.adobe.flexbuilder.project.actionscript.internal.ActionScriptProject.getSourceContainers(ActionScriptProject.java:681)
    at com.adobe.flexbuilder.as.editor.ui.packageexplorer.content.FlexPackageExplorerContentManager.getSourceRoot(FlexPackageExplorerContentManager.java:644)
    at com.adobe.flexbuilder.as.editor.ui.packageexplorer.FlexPackageExplorerContentProvider.getWorkspaceRootChildren(FlexPackageExplorerContentProvider.java:152)
    at com.adobe.flexbuilder.as.editor.ui.packageexplorer.FlexPackageExplorerContentProvider.getChildren(FlexPackageExplorerContentProvider.java:80)
    at com.adobe.flexbuilder.as.editor.ui.packageexplorer.FlexPackageExplorerContentProvider.inputChanged(FlexPackageExplorerContentProvider.java:449)
    [...]

它甚至无法显示项目列表,因此我可以删除导致问题的项目。“编辑器”视图中显示了类似的消息。删除所有项目文件也无济于事。我无法修复工作区,我可以继续使用 Flash Builder 的唯一方法是创建一个新工作区。

从那时起,我尝试了许多不同的事情:

  • 重新安装了 Flash Builder 4.5。
  • 重新安装了 Flex SDK 3.5B。
  • 检查了该项目的六个月大版本。
  • 升级到 Flash Builder 4.6。
  • 在我的计算机上创建了一个新的用户配置文件。
  • 试图删除任何可能破坏的跟踪文件:
    1. 使用 Instruments 来监控 Flash Builder 进程接触到的所有文件。
    2. 已卸载 Flash Builder。
    3. 用于find定位任何包含在buildereclipse名称中的文件。
    4. 删除在 (1) 或 (3) 中找到的所有可能与 Flash Builder 相关的文件。
    5. 重新安装了 Flash Builder。
  • 在另一台运行 Mac OS X 10.6.8 的 Mac 上安装了 Flash Builder 4.5。
  • 在另一台 Mac 上使用 Flex SDK 3.5 检查了该项目的两年前版本。
  • 在另一台 Mac 上的新工作区中进行了尝试,该项目已经在现有工作区中运行。(是的,当我们尝试将其导入新工作区时它坏了,即使它在现有工作区中继续正常工作。)
  • 在 Windows 7 VM 中安装了 Flash Builder 4.5。

没有任何区别。这似乎是不可能的。

我团队的其他成员已经在这个项目上工作了几年而没有遇到这个特殊问题,但现在我开始之前的项目版本似乎已经损坏,甚至在完全不同的系统上使用全新安装的 Flash Builder也打破了。

我联系了 Adob​​e 的电话支持以寻求有关此问题的帮助。在被告知这将是十五分钟后,我等待了一个多小时,只是让他们告诉我他们不再为该产品提供电话支持。(遗憾的是,在我等待之前,他们的电话树无法弄清楚这一点。)但是,我被告知“2 级电子邮件支持”可在platformt2-noida@adobe.com. 我应该知道比寄希望于地址无效而且我的消息都被退回更好!

我不知道是怎么回事。看来我一定是做了别的事情而忘记了,因为目前的情况毫无意义。有没有人遇到过这个问题?你知道可能是什么原因造成的,或者我可以做些什么来解决它?

4

2 回答 2

3

我们终于找到了解决办法。比较虎头蛇尾。

忽略所有错误。

导入您的项目文件并以您想要的任何顺序激活正确的 SDK 版本。如果您最终得到一个混乱的“项目资源管理器”视图,只需关闭该视图并重新打开它,或者重新启动 Flash Builder。

一旦“项目资源管理器”视图可用,选择您的主要项目并运行它。它应该工作!


实际上没有什么是永久损坏的。如果您先导入主项目,或者使用错误的 SDK 版本,“Project Explorer”视图可能处于暂时无法使用的状态,但只要您最终修复了这些问题,那么“Project Explorer”视图也将在下一个修复打开它的时间。

于 2012-11-14T20:54:55.623 回答
0

制作工作区中所有项目的备份副本,然后删除工作区中的所有文件(包括隐藏文件)。接下来将 Flashbuilder 指向现在为空的工作区目录(强制它重新创建所有工作区文件)。现在导入您已备份的项目文件夹。

于 2014-06-17T07:26:18.587 回答