Revision as of 15:57, 23 December 2009 by Alexey vladykin (Talk | contribs)


Project System

User-visible issues

  • Cross-platform support
  • Multi-file properties editing
  • Copy configuration should prompt for new name immediately
  • Project properties: "[...]" button should open Build Tools dialog
  • Toolchain & hosts -> to upper level
  • Project properties forgets selection
  • More standard libraries & Linker props usability
  • Custom run command for managed projects, including library projects
  • Multi-node project properties editing (e.g. C & C++)
  • Separate user & host
  • Support save in previous versions (as MS Office, OpenOffice)

Internal issues

  • Project System API
    • Customizable project properties
    • Logical folders: reuse NB approach
    • Actions: reuse NB approach
    • Pluggable pre-/post- actions
    • Project property change listeners
    • Monolithic configurations.xml
    • Memory consumption
    • Event model
  • Toolchain API
    • Pluggable discovery (DBX)
    • Validation (e.g. after GCC upgrade)
    • Accurate initialization (CompilerSet, Tool, ...)
    • Mixed toolchain issues (e.g. gdb with SunStudio compilers)
  • Configure script cross-platform support

General Thoughts

  • reuse NB Project API/SPI as much as possible
  • small Native Project API/SPI
  • Toolchain as separate concept


  • cnd.api.project - API/SPI module
  • cnd.project.impl - impl module of project system
  • use tests to cover new implementations
  • cnd.makeproject puts new API (wrappers around current impl) into project lookup
  • cnd components migrating to new APIs found in project lookup
  • Toolchain: define it better (set of tools), pluggable, configuring, ...
  • migrate from cnd.makeproject and cnd into dedicated components

Use Cases

  • Common for Gizmo/Thread Analyzer
    • Options page in project properties
    • determine source root(s), executable, arguments, environment
  • Thread Analyzer
    • add/remove -xinstrument flag
    • reconfigure/rebuild
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