プロジェクト

全般

プロフィール

NetBeans 自身をビルド

ソースコードの入手

NetBeans 11以降は、Apacheプロジェクトに移り、次のGithubリポジトリで開発中です。
https://github.com/apache/netbeans

旧版のソースコードの入手(~NetBeans 8.2)

NetBeansのソースコードを入手します。NetBeansのソースコードはMercurial HGで管理されているので、入手にはMercurialをインストールしておきます。

$ hg clone http://hg.netbeans.org/main

ここで、mainの部分には、入手したいブランチ名を入れます。

  • main-silver 開発ブランチ
  • main-golden 開発ブランチで、デイリービルドに使われるリポジトリ

Windows環境では、Win32版Mercurialで、次のエラーが発生しました。

C:\Users\torutk\Documents\work\java\netbeans\netbeans_src\repo2> hg clone http://hg.netbeans.org/main
複製先ディレクトリ: main
全リビジョンを取得中
リビジョンを追加中
マニフェストを追加中
ファイルの変更を追加中
285759 個のリビジョン(1000990 の変更を 182690 ファイルに適用)を追加
ブランチ default へ更新中
中断: ファイル名または拡張子が長すぎます。: C:\Users\torutk\Documents\work\java\netbeans\netbeans_src\repo2\main\maven.samples/samples_src/javaee7/servlet/absolute-ordering-web-fragments/absolute-ordering-web-fragments-war/src/main/java/org/glassfish/servlet/absolute_ordering_web_fragments_war

エラーメッセージのパスはおおよそ250文字なので、たぶんWindows OSのAPIの260バイト制限あたりに引っかかったのかと思います。
とりあえず、substコマンドで作業ディレクトリをドライブにマウントしてパスを浅くします。

C:\> subst x: C:\Users\torutk\Documents\work\java\netbeans\netbeans_src
C:\> x:
X:\> cd repo2
X:\repo2> hg clone http://hg.netbeans.org/main
destination directory: main
requesting all changes
adding changesets
adding manifests
adding file changes
added 285759 changesets with 1000990 changes to 182690 files
updating to branch default
96430 files updated, 0 files merged, 0 files removed, 0 files unresolved

X:\repo2>

できました。(しかし、clone完了までとっても時間がかかります)

ビルド

ビルド(NetBeans 9~)

Jenkinsのビルドサイトがあります。
https://builds.apache.org/job/incubator-netbeans-windows/
https://builds.apache.org/job/incubator-netbeans-linux/
https://builds.apache.org/job/incubator-netbeans-release/

ビルド(~NetBeans 8.2)

日本語でNetBeans IDE自体のビルド手順を紹介しているブログがありました。
NetBeansをソースからビルドする

コマンドライン(ant)でビルドするようです。トップディレクトリからすべてのビルドを実施するので、大変時間がかかります。