corner imagecorner image
IDEPlatformPluginsDocs & SupportCommunityPartners

A Guide to Using NetBeans IDE with Kenai Projects

If you have a project hosted on Kenai or are thinking of creating one, the integration of the services provided by Kenai with NetBeans IDE results in a truly integrated development environment for developing a project as part of a team.

This tutorial demonstrates how the collaborative tools in the IDE enable you to take advantage of the services offered by the Kenai.com infrastructure and facilitate communication and sharing between developers that are working on a project that is hosted on Kenai.com. The combination of Kenai services and the integrated support in NetBeans IDE provides a complete development environment.

Contents

Content on this page applies to NetBeans IDE 6.8

About Collaborating on a Project

Developers who are collaborating on a project require a set of tools and an infrastructure that can help them stay connected to each other and work together as a team. In addition to sharing sources, team members need to be able to share information and communicate with each other, and how they share information depends on the type of information they need to share. Not all team members will use the same tools, but communication between members can be simplified when the infrastructure and tools are integrated. Some members will be developers, but there might also be people responsible for designing the user interface, testing quality, writing documentation, managing the build cycle, etc., each with different requirements and preferences. Kenai provides a scalable, flexible platform for development that can grow as the project grows.

How a project develops can change over time. In some cases, in particular when starting a project from scratch, you might want to set up the project infrastructure before any coding starts. In other cases, a project might already be started and some code written, but the project has grown in scope and additional people need to be brought in to work on the project. As the size of the team changes, details about the project need to be captured and communicated. Tools such as issue trackers and wiki pages are useful for capturing this type of information.

Integrated Collaboration Tools and Services

Kenai provides an infrastructure of services for each project hosted on Kenai. You can open and create Kenai projects and access many of the Kenai services in NetBeans IDE. A Kenai project can help project members to stay connected and informed as the project develops.

When you create a project on Kenai, you create more than a version-controlled repository for your source code. For each project, Kenai provides resources and services that are important when working on a project, especially when there are many people collaborating on a project. The IDE provides integrated support for the following collaborative tools and services offerred by Kenai.

Version Control Systems

Source Code management is key to enabling a group of developers working on the same code base. The IDE provides integrated support for version control systems to help developers manage the history of file revisions. NetBeans IDE provides integrated support for Subversion, Mercurial and CVS. Subversion, Mercurial and Git are offered as source code management options for Kenai projects.

Issue Tracking

An issue tracking system enables developers and users to report and track issues associated with a project and provides a valuable feedback mechanism for people involved in the project. The integration of issue tracking systems in the IDE enables developers to find, view and resolve project issues from within the IDE. NetBeans IDE provides integrated support for Bugzilla and JIRA. Bugzilla and JIRA are offered as issue tracking options for Kenai projects.

Communication, Instant Messaging and Notifications

Each project that you create with the IDE has a chat room enabled. Project members can participate in the project's chat room and have private chats with each other. Chat enables members to exchange messages and links from within the IDE. The IDE also notifies users when there are changes to the project and new messages, for example, when there are changes to the repository.

Setting up a project

To set up a project on Kenai you first need to register on Kenai.com. After you are registered on Kenai, you can perform many of the remaining setup tasks from within the IDE. The IDE provides wizards that enable you to easily create a Kenai project and setup an issue tracker and a version-controlled repository for your project's sources. When you create a new Kenai project, the project's chat room, mailing lists, wiki page and downloads area are created and configured automatically.

After the project is created, the project administrator can configure additional project options for the project on Kenai.com.

The following help pages on Kenai.com provide you with more information about project features.

Creating a project

You can create a project on Kenai from within the IDE. When you create a project on Kenai, you create an environment that is designed to help developers that are working together on a project by providing a development infrastructure that includes source code hosting services, issue tracking and various communication channels to help developers stay connected.

Note. Projects on Kenai are available to the public and are covered by the project's license and the Kenai Terms of Use.

To create a new project on Kenai.com, perform the following steps.

  1. Register as a user on Kenai.com.
  2. In NetBeans IDE, log in to Kenai using your Kenai username.
  3. Choose Team > Kenai > New Kenai Project from the main menu.
  4. Specify the project's details and options in the New Kenai Project wizard.

After you create a project, other developers can view details about the project on the project page on Kenai. Projects hosted on Kenai are public and anyone can open the project and download the sources. Any developers that are interested in working together and contributing to a project can join the project as a member. The project administrator or owner can add members and assign roles from the project page on Kenai.

The following resources can provide good places to start learning about creating and managing a project on Kenai.

Joining a Project

You can join a project and become a member by bookmarking the project on Kenai.com. When you first join a project, you are granted the role of Observer. Project members with Observer status are usually not able to resolve issues or commit changes to the repository, but they can submit issues and participate in chats. If a project owner or administrator changes your status to Content Developer, for example, you can commit to the repository and resolve issues.

To join a project, perform the following steps.

  1. Register as a user on Kenai.com.
  2. Locate a project that you are interested in.
  3. Click "Bookmark This Project" on the project's home page on Kenai.

When you log in to Kenai in the IDE, all the projects that you have joined or created are listed under My Projects in the Kenai Dashboard. The Kenai Dashboard provides an overview of the projects and enables you to easily view project details, see the number of unread messages in project chat rooms and view issues.

Screenshot of Kenai dashboard

For more on becoming a member of a project, see the following documents.

Checking Out Sources

You do not need to be a project member to checkout the sources of a project. You can checkout a project's sources at any time from within the IDE by using the Get Sources from Kenai dialog and quickly create a local version-controlled source repository.

To check out the sources of a project from a Kenai repository, perform the following steps.

  1. Choose Team > Kenai > Get Sources from Kenai.
  2. Locate the repository for the project in the Get Sources from Kenai dialog box.
  3. Click Get From Kenai.
Get Sources from Kenai dialog

To check out sources from the IDE you need to have the appropriate client (Subversion or Mercurial) installed on your local system.

The following resources can provide good places to start learning about checking out sources and opening a project.

The following resources can provide good places to start learning about version control systems supported in the IDE.

Working Together as a Team

Communication is key when you are developing a project as a member of a team. The IDE has integrated support for various communication channels provided by Kenai. The following scenario demonstrates how the integrated support for various Kenai services can be used in a typical workflow. In this example, a user is interested in a project on Kenai and has joined the project as an Observer. Observers usually have limited ability to make changes to a project's code base, but they can contribute by submitting issue and participating in the project's chat room.

The following resources can provide good places to start learning about the integration of chat and notifications with other services in the IDE.

  1. The user Sophocles logs in to Kenai in the IDE and logs into Chat.

    When Sophocles logged in, the IDE displayed the notification that there were two new messages in the project chat room.

    Screenshot of Kenai dashboard

    In the status bar, the Online On Chat icon is green to indicate that he is available for Chat. One of his team members is also online.

  2. Sophocles opens the Kenai Dashboard.

    The dashboard displays a list of projects that Sophocles has joined.

    Screenshot of Kenai dashboard

    You can see that Sophocles is a member of only one project: the Consulting Agency Solution project. The dashboard displays the number of new messages in the chat room of each project.

  3. Sophocles clicks the Open icon to open the Consulting Agency Solution project in the dashboard.

    When he expands the project nodes, the dashboard displays an overview of the current status of the project.

    Screenshot of Kenai dashboard

    In the Dashboard you can quickly see the following information about the project:

    • There are two new messages in the project's chat room
    • One of the other project members is currently logged in and available for Chat.
    • The project has four open issues. One issue is assigned to or submitted by Sophocles.

    You can also see that Sophocles has already checked out the sources of the project.

  4. Sophocles clicks the Chat window icon in the dashboard and sees the two new messages in the project's chat room.
    Screenshot of Kenai dashboard
  5. Sophocles sends some messages and includes a link to the line in the file that contains the problem.
    Screenshot of Kenai dashboard

    You can send links to files and specific lines in files via chat. If a member has the project open, they can click the link to open the file to that line.

  6. Sophocles gets a notification of private chat messages.
    Screenshot of Kenai dashboard
  7. Sophocles opens the private chat window, sees the messages and responds.
    Screenshot of Kenai dashboard

    In addition to participating in project chat rooms, members can initiate private chats with other members. Anywhere that you see the online member icon, you can double-click the icon to open a chat with that member. You can initiate private chats from the Contact List in the Chat window and from many other windows in the IDE, including Issues windows and the Kenai Dashboard.

  8. Sophocles is editing a file to fix the issue when he receives a change notification that the file he is editing was recently changed in the repository.
    Screenshot of Kenai dashboard

    The IDE can provide notifications to help avoid source code conflicts. The IDE can warn you if the file you are editing is not the most recent version due to a recent change in the repository. You can click on the links in the notification to view the revision information or view a diff.

  9. Sophocles clicks "Diff remote changes" to view the diff between the version he is editing and the current version in the repository.
  10. Sophocles updates the local version because there is no conflict.
  11. Sophocles commits the changes and attaches the commit details to the related issue.
    Screenshot of Kenai dashboard

    The integration of project's issue tracker with the project's version control system enables you to update and resolve issues in the Commit dialog box as part of the commit process. The IDE can attach the commit messages to an issue. Messages with links to the changes can also automatically be sent to the project's chat room.

    For more about the integration of issue tracking and version control systems, see Working with Issue Tracking in NetBeans IDE.

  12. Sophocles checks the Kenai Dashboard for new messages or issues.
    Screenshot of Kenai dashboard

    You can see that Sophocles' status was changed to Developer to enable him to commit to the repository.


See Also

For additional information on using NetBeans IDE in a collaborative environment, see the following tutorials.