前一段时间我写了一篇关于Firefox AutoBuild的文章,可以方便的使用bat文件为我们的Firefox插件进行自动编译,这样就能够方便我们的工作,加快自动化过程。不过,很多时候我们都是用的NetBeans插件进行开发,而NetBeans开发插件的时候做了很多事情,包括替换啊,什么的,所以很难找生成manifest文件并且自动化的build代码,好在NetBeans的插件开发Firefox插件会生成Build和Disk两个文件夹,我们能够利用这两个文件夹进行编译,同样,代码看下面。
set x=%cd% //参数1是我们的项目的名称
//这里同样要设置一下我们的项目的路径
set p=D:\myfolder\myDevelopment\myFirefox\%1\build\chrome
set m=D:\myfolder\myDevelopment\myFirefox\%1\dist
md AutoBuild\chrome
md AutoBuild\defaults\preferences
md FFExtensionXPIFile
md FFExtensionXPIFile\content
md FFExtensionXPIFile\locale
md FFExtensionXPIFile\skin
xcopy
%p%\content FFExtensionXPIFile\content /sxcopy %p%\locale FFExtensionXPIFile\locale /s
xcopy %p%\skin FFExtensionXPIFile\skin /s
copy "%p%\install.js" AutoBuild
copy "%p%\install.rdf" AutoBuild
//这里我们拷贝Disk文件夹下面的manifest文件
copy "%m%\chrome.manifest" AutoBuild
copy "%p%\defaults\preferences\foxbeansdef.js" AutoBuild\defaults\preferences
del
/s FFExtensionXPIFile\skin\Thumbs.db //同样生成JAR和XPIcd FFExtensionXPIFile
"C:\Program Files\7-Zip\7z.exe" a -tzip "%1.jar" * -r -mx=0
cd ../
move "FFExtensionXPIFile\%1.jar" AutoBuild\chrome
cd AutoBuild
cd ../
move "AutoBuild\FFExtensionXPIFile.xpi" //移除临时文件
rmdir /s /q AutoBuild
rmdir /s /q FFExtensionXPIFile
上面这篇代码和我们原来的那篇文章里面的代码基本相同,唯一一点几个不同的地方就是这里要输入参数,并且寻找了两个文件夹进行编译,让我们的程序能够更好的生成,当然,这里的XPI文件还是FFExtensionXPIFile.xpi,如果你希望生成一个自己输入的参数的XPI的话,可以替换成%1,这样,传入的第一个参数就是我们生成的文件了。
使用方法必须要传入参数,在命令行里面先到相应的路径下,然后输入命令build.bat TestBuild(项目名称)。输入完成就可以生成相应的XPI了,不过这里要注意一点的就是,传入的参数名称必须要和NetBeans里面的项目的名称一样,否则无法使用。
比如我的项目是TestBuild,参数就应该是TestBuild。
[...] Firefox Add-on – Firefox Auto Build Script for Netbeans [...]