ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
エラー内容
Eclipse のプロジェクトを WAR ファイルとしてエクスポートしようとしたときに、以下のダイアログが表示されてエクスポートできません:
モジュール名が無効です。
Web module is not found.
発生条件
- プロジェクト右クリック → エクスポート → Web → WAR file 選択時
- 「Web project」のドロップダウンに対象プロジェクトが表示されない
- または表示はされているが「Module name is invalid」エラーになる
原因
プロジェクトが Eclipse 上で Web プロジェクト(動的 Web モジュール)として認識されていないのが原因です。新規プロジェクトを「Java プロジェクト」として作ったり、Maven のテンプレートが不適切だったりすると、Web ファセットが付いていない状態になります。
対処1: プロジェクト・ファセットで Dynamic Web Module を有効化
- パッケージ・エクスプローラーでプロジェクトを右クリック → プロパティ (Properties)
- 左ペインから プロジェクト・ファセット (Project Facets) を選択
- 動的 Web モジュール (Dynamic Web Module) にチェック
- バージョンを Tomcat に合わせて選択
- Tomcat 9 → 4.0 (Servlet 4.0 / Java EE 8)
- Tomcat 10 → 5.0 (Jakarta Servlet 5.0)
- Tomcat 11 → 6.0
- Java ファセットのバージョンも JDK と一致させる
- 下部の"Further configuration available..."リンクが表示されるならクリック → ContextRoot とコンテンツディレクトリ (
WebContentorsrc/main/webapp) を確認 - 適用して閉じる
対処2: web.xml の作成
Servlet 3.0 以降は web.xml なしでも動作しますが、Eclipse の WAR エクスポートでは WEB-INF/web.xml が必須のことがあります:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<display-name>MyApp</display-name>
</web-app>
配置場所: WebContent/WEB-INF/web.xml または Maven プロジェクトなら src/main/webapp/WEB-INF/web.xml
対処3: Maven プロジェクトなら packaging を war に
Maven プロジェクトの場合、pom.xml に以下を明示します:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>myapp</artifactId>
<version>1.0.0</version>
<packaging>war</packaging> <!-- ★ これが必須 -->
<dependencies>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<version>6.0.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
変更後、プロジェクト右クリック → Maven → プロジェクトの更新を実行。
対処4: プロジェクトを別ワークスペースで作り直し
上記でも改善しない場合、Eclipse 側のメタデータが破損している可能性があります:
- 既存プロジェクトのソース(
src、WebContent、pom.xml)をバックアップ - 新規ワークスペースを作成
- 新規 → 動的 Web プロジェクトまたは Maven プロジェクト(war パッケージング)で作成
- バックアップしたソースを上書きコピー
- WAR エクスポートを再試行
関連エラー
- 「項目
module nameの値がモジュール名に無効です」 — ファセットの context-root が空。プロジェクト・ファセットの「Further configuration」を確認 - 「The selected ... cannot be exported in this manner」 — Web プロジェクトではない普通の Java プロジェクト → ファセット追加
- 「Dynamic Web Module cannot be uninstalled」 — Java バージョンが対応していない → Java ファセットも合わせて変更
確認
正しく WAR エクスポートできれば、プロジェクトのルートに以下のような構造の WAR ファイルが生成されます:
myapp.war
├── META-INF/
│ └── MANIFEST.MF
├── WEB-INF/
│ ├── web.xml
│ ├── classes/ ← コンパイル済みクラス
│ │ └── com/example/MyServlet.class
│ └── lib/ ← 依存 jar(provided でないもの)
├── index.jsp
└── (静的リソース)
Tomcat の webapps/ にコピーすると自動展開されます。展開先のフォルダ名 = コンテキストパス(http://localhost:8080/myapp/)。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?