There was big conceptual change with the Main project approach in NetBeans IDE in recent builds. In short - when you haven't set up the main project then all the actions behaves as contextual.

There is nice document summarizing all the changes from user point view - ui spec. There are use cases when the main project concept has sense. For example you have some libraries and a project that uses them. In this case you always want to run the main project when you hit the Run(F6) button. But in other cases there is no need for a main project. Then Run(F6) runs the selected file or project. The main project is highlighted by bold name in the IDE.
Another interesting improvement is that the Set As Main Project option will be disable (even not present for some projects in New Project wizard). By default it will be off for PHP Project, Ruby Project, Rails Project, Java Library (no checkbox at all), EJB project (typically exists in the context of an EAR application), UML Project (no checkbox at all). On for all other projects where it is present.

There is nice document summarizing all the changes from user point view - ui spec. There are use cases when the main project concept has sense. For example you have some libraries and a project that uses them. In this case you always want to run the main project when you hit the Run(F6) button. But in other cases there is no need for a main project. Then Run(F6) runs the selected file or project. The main project is highlighted by bold name in the IDE.
| With Main project | No Main Project set up |
|---|---|
| Build Main Project | Build Project |
| Clean and Build Main Project | Clean and Build Project |
| Batch Build Main Project | Batch Build Project |
| Run Main Project | Run Project |
| Debug Main Project | Debug Project |
Another interesting improvement is that the Set As Main Project option will be disable (even not present for some projects in New Project wizard). By default it will be off for PHP Project, Ruby Project, Rails Project, Java Library (no checkbox at all), EJB project (typically exists in the context of an EAR application), UML Project (no checkbox at all). On for all other projects where it is present.





