NetBeans6.0MLBuildSystem

NetBeans 6.0 Multilanguage Build System

Changes in NetBeans 6.0 Build System would be wide affecting whole globalization process.

Implemented changes:

Show issues on one page


NetBeans 6 globalization process has changed significantly. Major reasons were:

  • all NetBeans Packs (mobility, visualweb etc.) have been all consolidated into one product - "NetBeans 6"
  • higher demand to have larger set of different localization kits (fixed by issue 101067)
  • higher demand to see localized strings in shown content in Plugin Manager (partially fixed by issue 98893)


Localization kit preparation

NetBeans 6 L10N kit buildsystem can prepare any variant of L10N kit based on your requirements. This has been accomplished by changing scope of l10n.list file. It has been split into two files. Global patterns file and local patterns file. Local patterns are always used and fully override Global patterns. Local patterns file may, but must not load Global patterns. This causes, that Global patterns are used only in two cases. There is no local l10n.list file or the local l10n.list file contains line "read global" ( see docs). This has been accomplished by moving local l10n.list file from top-level CVS module directly to root of respective NetBeans module (i.e. from serverplugins/l10n.list to serverplugins/sun/appsrv81/l10n.list), where the local file covers only for that respective NetBeans module and nothing else. This change allowed to use the same configuration for regular product build as well as for L10N kit build. In other words you still use comma-separated list of NetBeans modules and build system takes it as it is.


Multilanguage build

NetBeans 6 multilanguage build has got two different ways how to do localization. One is used for so called Sun-supported localizations (ja, zh_CN, pt_BR) and the other is used for community-provided localizations.

Sun-supported localization

It goes out in one day all supported locales in one build - in one installer you get all three localizations (plus English). The localization jarfiles are registered always with respective NetBeans module.

Community-provided localization

The support is set to provide localization data in different way. We configured a build job on deadlock.netbeans.org which builds set of NBMs for each locale. The set of NBMs consists of localization kit umbrella module, which depends on localization NBM for each of 16 clusters (harness,platform7,ide8,java1,apisupport1,nb6_0,xml1,enterprise4,profiler2,mobility8,visualweb1,identity1,uml4,soa1,ruby1,cnd1). All these 17 NBMs are artificial NetBeans modules with synthetic codename base starting with "org.netbeans.localization". These per-cluster localization NBMs often contain localization jarfiles for multiple NetBeans moduleshosted in respective cluster. We build one set of 17 NBMs for each of community-provided localizations.

Running multilingual build

Running IDE build

This works for both types for community provided localizations and also for Sun-supported locales. Provide list of locales as comma-separated list in the "locales" property.

ant -Dlocales=ja,zh_CN,pt_BR build-zip-ml

Running NBM build for community provided localizations

This procedure builds 17 localizing NBMs, one for each cluster. In this way localization jarfiles are registered with artificial module providing localization for whole cluster.

ant -Dlocales=az,bg,cs,de,el,es,fr,in,it,ko,nl,pl,ru,sq,sv,tr,zh_TW,pt_PT build-zip-ml build-nbms-ml

Running NBM build for Sun-supported locales

This procedure builds plenty of NBMs, one NBM for each NetBeans module. In this way localization jarfiles are registered with respective NetBeans module.

ant -Dlocales=ja,zh_CN,pt_BR build-zip-ml build-nbms
Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo