游戏在不同的机种之间移植的时候,需要修改的地方通常有美术资源,程序片断。针对这些要求,Netbeans使用Configuration来解决这些问题。每个Configuratio里面相关的属性包括:
1、Platform。对应的机型,模拟器,支持的扩展包等。
2、Abilities。该平台一些属性的描述,比如ScreenSize, ScreenColorDepth, JSRXXX等。这些都是用户定义的,用来描述平台的属性。在预处理片断中使用这些属性。
3、Sources Filter。指定该配置下所使用到的程序。如果把资源也放在src目录下的话,也可以用来指定所需要的资源。
4、Libraries & Resources。指定所需要类库和资源。不同机种的资源经常是不同的。
5、Creating JAR。指定JAD和JAR文件的名称。
在程序代码中,就可以使用下面的预处理指示符:
//#if ScreenSize == "128x160"
int tileWidth = 12;
//#elif ScreenSize == "176x208"
int tileWidth = 16;
//#endif
NetBeans 会根据Active Configuration把不用的代码注释掉。当使用Build All Project Configurations的时候,就会在dist目录下生成针对每一个Configuration的目录,并把编译好的JAD和JAR文件放到其中。