在做一些开发的时候,我们总是在想能不能自动的去build,好在现在有很多的工具帮我们build,例如微软的tfs的check in build,daily build等等,能够每天帮我们自动的去编译我们的代码保证团队里面的每个人都能够用到最新的工具。那么Firefox Extension能不能自己去build呢,答案是肯定的,但是不是使用Netbeans去build,而是使用命令行去build。
在做Firefox Extension的AutoBuild的时候,系统必须要安装7zip的工具,至于如何自己build,看下面的代码。
@echo off
set x=%cd%
//设置路径
set p=D:\FirefoxExtension
//创建文件夹
md AutoBuild\chrome
md AutoBuild\defaults\preferences
md FFExtensionXPIFile
md FFExtensionXPIFile\content
md FFExtensionXPIFile\locale
md FFExtensionXPIFile\skin
//拷贝文件
xcopy %p%\content FFExtensionXPIFile\content /s
xcopy %p%\locale FFExtensionXPIFile\locale /s
xcopy %p%\skin FFExtensionXPIFile\skin /s
copy "%p%\install.js" AutoBuild
copy "%p%\install.rdf" AutoBuild
copy "%p%\chrome.manifest" AutoBuild
copy "%p%\defaults\preferences\foxbeansdef.js" AutoBuild\defaults\preferences
//删除不必要的文件
del /s FFExtensionXPIFile\skin\Thumbs.db
//记住要创建相应的jar文件,这个要和manifest对应
//还有记住机器一定要安装7z
cd FFExtensionXPIFile
"C:\Program Files\7-Zip\7z.exe" a -tzip "SomeAddon.jar" * -r -mx=0
cd ../
move "FFExtensionXPIFile\SomeAddon.jar" AutoBuild\chrome
//编译XPI文件
cd AutoBuild
"C:\Program Files\7-Zip\7z.exe" a -tzip "FFExtensionXPIFile.xpi" * -r -mx=0
cd ../
move "AutoBuild\FFExtensionXPIFile.xpi"
//移除临时文件
rmdir /s /q AutoBuild
rmdir /s /q FFExtensionXPIFile
上面代码就自己做了一个auto build,不过前提是你使用windows操作系统并使用netbeans进行开发,当然,还有一种方式可以在MAC OS下进行build,并且不使用Netbeans进行开发。(现在开来用Netbeans开发的话,开发的快,维护起来不是很方便)如果你感兴趣,可以看这篇文章。
如果你想知道如何在NetBeans中使用AutoBuild,请看这篇文章。
Firefox Addon
firefox, extension, autobuild