我有一个Flash项目,它有很多源文件.我有一个相当频繁使用的课程,称之为Jenine.我最近(也许,无情地)将Jenine从一个名称空间重新定位到另一个名称空间.我以为我们已经准备好了 - 我以为是时候了.新Jenine在各方面都做得更好 - 她已经失去了一些代码膨胀,她已经脱离了一些残余的阶级关系,她终于回到了她一直秘密知道的命名空间,这是她真实的那个曾经属于.她是她自己的一员.
不幸的是,Flash没有这个.也许它已经形成了一种依恋.也许它不希望 Jenine脱钩.无论哪种方式,它都坚持在其记忆中的旧的,完美的Jenine版本.它拒绝继续前进.它忽略了她的(函数)调用.它试图忘记她的新的公共界面.相反,它构建的每个Jenine实例始终是旧版本的副本,直到其类路径:
var jenineInstance:Jenine = new Jenine();
trace( getQualifiedClassName(jenineInstance));
// Should print: com.newnamespace.subspace::Jenine
// Prints: com.oldnamespace.subspace::Jenine
// Ah, young love!
Run Code Online (Sandbox Code Playgroud)
我们打了.我对自己所说或做过的一些事情并不感到骄傲.最后,在愤怒的高潮中,我完全删除了所有Jenine的引用.她完全被系统彻底清除了.我的光标落在"清空垃圾"菜单选项上,就像棺材的冷盖一样.
我认为Flash无法恢复.直到今天,它仍然依附于珍妮的记忆.她的旧的,不完美的定义仍然像我被遗弃的幽灵一样漂浮在我的项目中.每当我强迫Flash编译时,它仍然会将她的爱情插入到我的电影中,将她的定义融入其他生活课程中,就像一个小神社.我想知道他们是否能看到她.
Flash和我不再谈论了.我写了我的代码,它编译它.在镇上有一个名叫Summer的新女孩看起来几乎与Jenine完全相同,好像有人刚刚将她的源代码批发复制到一个新的类中,但Flash并没有表现出任何兴趣.大多数时候,当它认为我不看时,它只是在我的评论中徘徊并写下糟糕的诗歌.
我希望没有其他人有类似的经历,这只是一个奇怪的,痛苦的波纹在可怕的黑暗泻湖,即Flash代码库.如果你有一些侥幸的机会,或者你知道如何删除编译器正在使用的任何该死的缓存,请帮助.
我想存储一组在构建时自动递增的整数:
int MajorVersion = 0;
int MinorVersion = 1;
int Revision = 92;
Run Code Online (Sandbox Code Playgroud)
当我编译时,它会自动增加Revision.当我构建安装项目时,它会增加MinorVersion(我可以手动执行此操作).MajorVersion只会手动增加.
然后我可以在菜单Help/About中向用户显示版本号:
Version: 0.1.92
怎么能实现这一目标?
这个问题不仅要求如何使用自动递增版本号,还要求如何在代码中使用它,这是一个比其他更完整的答案.