Flash Builder 4.6链接的资源不与ANE和Certs一起使用

时间:2012-03-14 16:35:25

标签: flash-builder

我在Flash Builder中遇到链接资源的问题。我在团队环境中工作,我们广泛使用Linked Resources。我们刚刚开始开发ANE并注意到虽然linkedResources用于libraryPathEntry,但在诸如anePathEntry和airCertificatePath之类的buildTargets中,存储了绝对路径。我尝试直接编辑.actionScriptProperties文件,使用libraryPathEntry作为指南修改buildtarget绝对路径到链接的资源等价物,但FlashBuilder在加载项目时抱怨。

有没有办法让buildTargets尊重linkedResources而不保存绝对路径?我正试图避免所有开发人员必须拥有完全相同的目录结构的严苛方式。

谢谢!

兰迪

2 个答案:

答案 0 :(得分:1)

我的团队遇到了这个问题,所有使用相对路径或工作区宏(即$ {PROJECT_LOC})修复它的尝试都失败了。似乎负责Flash Builder的团队忽略了支持这些特定对话框中的相对路径,尽管它们在其他地方得到了支持。

以下是我们为解决此问题所做的工作。我假设您使用的是Mac / Linux等。如果没有,这里的概念仍然可以应用。

我们的大多数项目都有一个“设置”bash脚本,贡献者在获取代码时会运行这些脚本。在该脚本内部,我们只需设置一些符号链接,从用户特定的绝对路径到具有“普通”用户的新绝对路径。如果该目录不存在,该脚本首先创建该目录,然后创建符号链接。

sudo mkdir -p /Users/common/<project>/
sudo ln -f -h -s ~/path/to/certificate/dir /Users/common/<project>/certificates

显然你可以使用你喜欢的任何东西以及对共同路径有意义的东西。

现在,在.actionScriptProperties文件中,您可以将provisingFile和airCertificatePath指向的位置更改为此新的公共绝对路径。

<buildTarget ... provisioningFile="/Users/common/<project>/certificates/provisionfile.mobileprovision" ... >
<airSettings airCertificatePath="/Users/common/<project>/certificates/cert.p12" ... >

我们实际上更进了一步(我怀疑你也需要这样做)并为ANE文件本身创建通用的符号链接路径。这最终也将anePathEntry更改为公共路径。

<anePathEntry path="/Users/common/<project>/anes/some.ane"/>
  • 您需要确保直接手动编辑.actionScriptProperties文件,或直接在对话框中输入完全限定的符号链接路径。任何尝试使用Flash Builder启动的Finder对话框导航到公共位置的文件都会导致符号链接自动解析为其实际位置。
  • 该脚本需要sudo,我相信你知道,它会要求用户知道他们的root密码。如果这不是你的选择,也许一些更精明的bash精明的人可以建议一个解决sudo的方法。
  • 这也适用于Android的东西,我相信。我不知道这对你是否重要。

希望这有帮助!

答案 1 :(得分:0)

看起来这个问题在Flash Builder 4.6已知问题中被提及:

http://helpx.adobe.com/flash-builder/kb/flash-builder-4-6-known.html

https://bugs.adobe.com/jira/browse/FB-32955

该错误显然已修复,但我还未能检查新的Flash Builder 4.7测试版:

http://blogs.adobe.com/flex/2012/08/flash-builder-4-7-beta-is-here.html