| この記事の要点 |
|
NetBeans とは
NetBeans(ネットビーンズ)は、主に Java 開発のための統合開発環境 (IDE) です。Eclipse、IntelliJ IDEA と並んで 三大 Java IDE と呼ばれ、特に Swing / Java FX の GUI ビルダーが強力なことで知られます。
歴史的には Sun Microsystems が公式 Java IDE として配布 → Oracle 買収後も継続 → 2017 年に Apache Software Foundation へ寄贈され、現在は Apache NetBeans として開発されています。
主な特徴
| 機能 | 説明 |
|---|---|
| Java SE / EE / ME 対応 | デスクトップ / Web / 組み込みすべて |
| Maven / Gradle / Ant 統合 | プロジェクト import で自動認識 |
| デバッガ | ブレークポイント / ステップ / 式評価 / リモートデバッグ |
| リファクタリング | 名前変更 / メソッド抽出 / 移動 / インライン化 |
| GUI ビルダー | JFormDesigner による Swing / JavaFX GUI のドラッグ&ドロップ設計 |
| 多言語対応 | PHP / HTML5 / JavaScript / CSS / Groovy / C/C++ (プラグイン) |
| プロファイラ | CPU / メモリ プロファイリング統合 |
| Git / Subversion / Mercurial | VCS 統合 |
インストール
公式: https://netbeans.apache.org/ から OS 別インストーラーをダウンロード。
# Ubuntu / Debian (snap)
sudo snap install netbeans --classic
# Windows (Chocolatey)
choco install netbeans
# macOS (Homebrew)
brew install --cask netbeans
# 必須: JDK
# Apache NetBeans 21 は JDK 17+ が必要
sudo apt install openjdk-21-jdk
java -version
初回プロジェクト作成
- 起動 → 新規プロジェクト → Java with Maven → Java Application
- プロジェクト名 / 場所 / Group ID / Artifact ID 入力
- pom.xml が自動生成される
Main.javaにpublic static void mainが自動配置 → 緑の三角ボタンで実行
<!-- pom.xml の例 -->
<project xmlns="http://maven.apache.org/POM/4.0.0">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>hello</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
</project>
Eclipse / IntelliJ IDEA との比較
| 項目 | NetBeans | Eclipse | IntelliJ IDEA |
|---|---|---|---|
| ライセンス | Apache 2.0(無料) | EPL(無料) | Community 無料 / Ultimate 有償 |
| Swing GUI ビルダー | ★★★ 強力 | WindowBuilder 別途 | 有償版のみ |
| Maven 統合 | ★★★ ネイティブ | m2eclipse プラグイン | ★★★ ネイティブ |
| 動作の軽さ | ★★ 中 | ★ 重い | ★ 重い |
| プラグイン数 | 少なめ | ★★★ 圧倒的多さ | ★★ 多い(公式中心) |
| コード補完精度 | ★★ 良好 | ★★ 良好 | ★★★ 業界トップ |
| Spring Boot 対応 | ★★ プラグイン | STS 派生 | ★★★ Ultimate でネイティブ |
| 初心者向け | ★★★ 学校教材で多数採用 | ★★ | ★ |
主要機能の使い方
デバッガ
左側のガター(行番号横)をクリックしてブレークポイントを設置 → F5 でデバッグ実行 → F7: ステップイン / F8: ステップオーバー / F4: 継続。変数ウィンドウで値確認、式を評価することもできます。
リファクタリング
変数 / メソッド / クラス名で右クリック → リファクタリング → 名前の変更 (Ctrl+R) で全使用箇所一括変更。他に:
- メソッドの抽出 (Ctrl+Alt+M) — 選択ブロックを別メソッドに
- インライン化 — 逆の操作
- クラスの移動 — パッケージ変更
- 変更履歴の取得 — 操作を取り消し可能
JFormDesigner(GUI ビルダー)
新規 → JFrame Form → ドラッグ&ドロップで Swing コンポーネント配置 → プロパティを設定 → 自動で initComponents() メソッドが生成され、Form と Code を行き来して編集できます。Swing 入門に最適です。
PHP / HTML5 / JavaScript 開発
NetBeans は Java 専用ではありません。PHP IDE としても歴史があり、PhpStorm 登場前は Linux での PHP 開発の定番でした:
- PHP プロジェクト作成(Composer 統合)
- PHP CodeSniffer / PHPMD 連携
- Xdebug デバッグ
- Symfony / Laravel テンプレート
- HTML5 / CSS / JavaScript / Node.js プロジェクト
バージョンと JDK 対応
| NetBeans | 必要 JDK | 備考 |
|---|---|---|
| 21.x(最新) | JDK 17+ | 2025 年現在の安定 |
| 17.x | JDK 11+ | 長期サポート版 |
| 12.x | JDK 8 / 11 | Apache 移管初期版 |
| 8.2(Oracle) | JDK 8 | レガシー、もう使わない |
FAQ
Q: Eclipse から NetBeans に移行するメリットは?
A: ① 動作が軽い、② Maven がネイティブ統合、③ Swing GUI ビルダーが標準搭載、④ 設定が直感的(perspective 切替不要)。
Q: Spring Boot 開発で使えるか?
A: 使えますが、IntelliJ IDEA Ultimate / STS(Spring Tool Suite)の方が補完精度が高いです。NetBeans + Spring Boot プラグインで運用可能。
Q: 日本語化はできる?
A: 公式インストーラーが日本語ロケールに自動対応。etc/netbeans.conf に --locale ja:JP を追記すれば確実。
Q: NetBeans IDE と NetBeans Platform の違い
A: IDE は開発環境本体。NetBeans Platform はその基盤となるRich Client Platform フレームワークで、IDE 風アプリを自作するのに使えます。
関連
- Eclipse — もう一つの定番 Java IDE
- IntelliJ IDEA — JetBrains 製、現在の業界標準
- Maven — NetBeans のネイティブビルドツール
- OpenJDK — NetBeans の動作に必要な Java 実行環境
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- プロジェクトをTomcatプロジェクトとして認識させる方法 2026-10-07 22:32:50
- MySQLの1366 Incorrect string value|Laravelの文字コード・絵文字エラー 2026-10-07 21:54:03
- curlの証明書ホスト名不一致|旧エラー51・現行60の確認と対処 2026-10-07 21:54:03
- LaravelのMassAssignmentException|fillableの原因と安全な対処 2026-10-07 21:54:03
- Eclipse で Tomcat の起動ログがコンソールに出ない時の確認手順 2026-10-07 21:54:02
- MySQLにおける中央値(Median)の導き方(バージョン8未満) 2026-10-07 13:49:45
- getInputForward 2026-10-07 13:41:15
- JSONから配列に変換 2026-10-07 13:41:15
- ビューから値をモデルに格納しコントローラーで受け取る方法 2026-10-07 13:23:41
- Laravelのテーブル作成と定義変更|マイグレーション・up/down・注意点 2026-10-07 13:23:41
- NumPy 配列に要素を追加する方法 (append / concatenate) 2026-10-07 13:23:41
- MariaDB・MySQLで現在日時を取得する方法|NOW・タイムゾーン・保存型 2026-10-07 13:13:36
- 【django】テンプレートで定数を使用する方法 2026-10-07 13:10:15
- Spring BootにおけるApplication.propertiesの環境依存設定の分割方法 2026-10-07 12:09:35
- Not supported for DML operations【Springエラー】 2026-10-07 11:09:38