【2026年9月最新】Javaのjarファイル作成・解凍・実行を完全ガイド|jarコマンドとMain-Classの正しい書き方

【2026年9月最新】Javaのjarファイル作成・解凍・実行を完全ガイド|jarコマンドとMain-Classの正しい書き方

「Javaのjarファイルを作りたいが、コマンドが複雑でよく分からない」「作ったjarファイルを実行しようとしたらエラーが出た」——この記事にたどり着いた方は、Javaのパッケージング(配布用ファイルの作成)でつまずいているはずです。

結論から言うと、実行可能なjarファイルを作るにはjar cfe app.jar Main *.class(パッケージを使う場合はディレクトリごと指定)、実行するにはjava -jar app.jarが基本形です。ただし、マニフェストファイルの書き方やclasspathの指定方法にはOSごとの違いもあり、初心者が必ずどこかでつまずくポイントがあります。

この記事では、jarファイルの基本構造から、作成・実行・解凍のコマンド、よくあるエラーの原因まで、コード例つきで整理します。あわせて、弊社(株式会社GENAI)がClaude Codeを全社で運用している立場から、「ビルド・パッケージングの細かいミスを、非エンジニアの経営者がどう管理するか」という視点も加えて解説します。

代表菅澤 代表菅澤
jarファイルは「複数のファイルを1つにまとめて配布する」という発想自体はシンプルですが、実行可能にするための設定でつまずく人が本当に多いです。今日は基礎から丁寧に整理していきます。
AI鬼管理山崎 AI鬼管理山崎
コマンドの使い方はもちろん解説しますが、後半では「こうしたビルドの細かいミスを、組織としてどう防ぐか」もお伝えします。Claude Codeにビルド設定を確認させるという選択肢です。

この記事を最後まで読むと、次の6つが明確になります。

✔️jarファイルとは何か、非エンジニアにも分かる例え話での理解
✔️jarコマンドの基本オプション(作成・一覧・解凍・更新)
✔️実行可能なjarファイルの作り方とMain-Classの指定方法
✔️java -jarでの実行と、classpath指定時のOSごとの違い
✔️jarファイルの解凍・中身の確認方法
✔️ビルドの細かいミスをClaude Codeでどう防ぐか、弊社の実運用データ
AI社員AIKATA|月30万円の定額で御社の業務をまるごと巻き取ります(無料相談60分)御社が減らせる固定費は月いくらか|公式LINEで質問に答えるだけ(無料・約1分)
📌 この記事の結論
【2026年9月最新】Javaのjarファイル作成・解凍・実行を完全ガイド|jarコマンドとMain-Classの正しい書き方
Javaのjarファイルの作成・解凍・実行方法を、jarコマンドの基本オプションからMain-Classの指定方法、classpathのOS差異まで解説。非エンジニアがビルド事故をClaude Codeで減らす方法もあわせて紹介します。

01 jarファイルとは何か|基本構造を理解する 非エンジニアにも分かる例え話で理解する

jarファイル(Java ARchive)は、Javaプログラムを構成する複数のファイル(クラスファイルやリソース)を1つにまとめて配布・実行できる形式にしたパッケージです。「複数の書類をまとめて1つの封筒に入れて渡す」というイメージだと理解しやすくなります。

📚 用語解説

jarファイル (Java ARchive):複数のJavaクラスファイルやリソースファイルを1つにまとめた圧縮ファイル形式。拡張子は.jar。内部的にはZIP形式と同じ圧縮方式が使われており、実態としては「Java用に規格化されたZIPファイル」と言えます。

jarファイルの中には、通常のクラスファイルに加えてMETA-INF/MANIFEST.MFという特別なファイルが含まれます。これは「この箱(jarファイル)の中身を、どう扱えばいいか」を記した説明書のような役割を持っています。

📚 用語解説

マニフェストファイル (MANIFEST.MF):jarファイルの中に自動的に含まれる設定ファイル。「どのクラスを最初に実行すればいいか(Main-Class)」といった、Javaの実行環境に対する指示情報が記述されます。手動で編集する場合はテキストファイルとして作成し、jar作成時に組み込みます。

AI鬼管理山崎 AI鬼管理山崎
「なぜjarファイルの中に説明書(マニフェスト)が必要なのか」というと、複数のクラスファイルが入っている箱の中で、Javaが「どれから実行を始めればいいか」を自力では判断できないからです。この説明書がその道しるべになります。

jarファイルは大きく分けて、「ライブラリとして他のプログラムから読み込まれるjar」「単体で実行できる実行可能jar」の2種類に分けられます。この記事では主に、実行可能jarの作成・実行に焦点を当てて解説します。

1-1. jar・war・earの違い

Javaのアーカイブ形式には、jar以外にも用途別の拡張版が存在します。名前が似ているため混同されがちですが、それぞれ用途が異なります。

拡張子正式名称主な用途
.jarJava ARchive汎用のクラスファイル・リソースのパッケージ。単体実行も可能
.warWeb application ARchiveWebアプリケーション用。Tomcat等のサーブレットコンテナにデプロイして使う
.earEnterprise ARchive複数のwar・jarをまとめた、エンタープライズアプリケーション向けの形式

いずれも内部的にはZIP形式をベースにしており、「何のためにパッケージ化するか」によって呼び方と内部構造の規約が変わると理解しておくと整理しやすくなります。個人開発や小規模ツールであれば、基本的にjarファイルだけを扱うケースがほとんどです。

02 jarコマンドの基本オプション一覧 作成・一覧・解凍・更新、代表的な4つの操作

jarファイルの操作は、JDK(Java Development Kit)に標準で付属するjarコマンドで行います。基本構文は以下の通りです。

jar [操作オプション] jarファイル名 [対象ファイル...]

代表的な操作オプションを一覧で整理します。

オプション意味主な用途
ccreate(新規作成)新しいjarファイルを作成する
ttable(一覧表示)jarファイルの中身の一覧を確認する
xextract(展開)jarファイルの中身を取り出す
uupdate(更新)既存のjarファイルにファイルを追加・更新する
ffile(ファイル名指定)操作対象のjarファイル名を指定する(ほぼ必須)
mmanifest(マニフェスト指定)独自に用意したマニフェストファイルを組み込む
eentrypoint(エントリポイント指定)Main-Classをコマンドから直接指定する
vverbose(詳細表示)処理内容を詳しく画面に表示する
💡 オプションは組み合わせて使う

jarコマンドのオプションは、cftvfのように複数を連結して1つの引数として渡すのが伝統的な書き方です。c(作成)とf(ファイル名指定)を組み合わせたcfが最も基本的な組み合わせになります。

03 jarファイルの作成方法【実行可能jarまで】 コンパイルからMain-Classの指定まで段階的に解説

jarファイルを作成するには、まずJavaのソースコードをコンパイルしてクラスファイルを用意します。

javac Main.java
# Main.class が生成される

📚 用語解説

コンパイル:人間が書いたソースコード(.javaファイル)を、コンピュータが実行できる形式(.classファイル)に変換する処理。Javaではjavacコマンドがコンパイラの役割を担い、変換後のクラスファイルを実行するのはjavaコマンド(JVM)という役割分担になっています。

3-1. 通常のjarファイルを作成する

コンパイル済みのクラスファイルをまとめてjar化する、最もシンプルな例です。

jar cf app.jar Main.class
# app.jar というjarファイルが作成される

3-2. 実行可能jarファイルを作成する(Main-Classを指定)

単にjar cfで作っただけのjarファイルは、まだ「どのクラスから実行を始めるか」の情報を持っていません。実行可能jarにするには、Main-Classをマニフェストに記述する必要があります。もっとも簡単な方法は、-eオプションでエントリポイント(開始点となるクラス)を直接指定することです。パッケージを使っていない場合は、以下のようにシンプルに書けます。

jar cfe app.jar Main *.class
# c: 作成 / f: ファイル名指定 / e: エントリポイント指定

パッケージ(com.exampleのような名前空間)を使っている場合は注意が必要です。com.example.MainというFQCN(完全修飾クラス名)を指定するなら、コンパイル時に-dオプションでパッケージ名に対応したディレクトリ構造(com/example/Main.class)を生成し、jar作成時もそのディレクトリごと対象に含める必要があります。

javac -d . com/example/Main.java
# com/example/Main.class が生成される

jar cfe app.jar com.example.Main com/example/*.class
# パッケージのディレクトリ構造ごとjar化する
⚠️ *.classだけではパッケージのクラスが含まれないことがある

カレントディレクトリ直下の*.classという指定は、サブディレクトリの中身までは対象になりません。パッケージ構成のプロジェクトでは、com/example/*.classのようにパッケージのディレクトリを明示するか、ディレクトリごと指定してjar化する必要があります。指定が漏れると、Main-Classに指定したクラスがjarの中に含まれず、実行時にクラスが見つからないエラーになります。

3-3. 独自のマニフェストファイルを使う方法

より細かい設定(Class-Path指定など)を行いたい場合は、マニフェストファイルを自分で用意して-mオプションで組み込みます。

# manifest.txt の中身
Main-Class: Main

# jarを作成
jar cfm app.jar manifest.txt *.class

# パッケージを使う場合は、Main-Classをパッケージ込みのFQCNにし、
# 対象ファイルもパッケージのディレクトリごと指定する
# 例: Main-Class: com.example.Main
#     jar cfm app.jar manifest.txt com/example/*.class
⚠️ マニフェストファイルの末尾に改行を入れる

手動でマニフェストファイル(manifest.txt)を作成する場合、最終行の末尾に改行を入れておかないと、記述した内容が正しく認識されないことがあります。テキストエディタによっては最終行に改行が入らない設定になっていることがあるため、保存後に確認しておくと安心です。

📚 用語解説

FQCN (完全修飾クラス名):パッケージ名を含めた、クラスの完全な名前。例えばcom.exampleパッケージのMainクラスであればcom.example.Mainと表記します。Main-Classの指定など、jarに関する設定では必ずこの完全な形式で指定する必要があります。

AI鬼管理山崎 AI鬼管理山崎
-eオプションでのエントリポイント指定は、マニフェストファイルを別途用意する手間を省ける便利な方法です。まずはこちらで実行可能jarを作れるようになってから、必要に応じて独自マニフェストに進むのがおすすめです。

3-4. 既存のjarファイルを更新する

一度作成したjarファイルに、新しいクラスファイルを追加したり、既存のファイルを更新したりしたい場合は、作り直す必要はありません。u(update)オプションを使えば、既存のjarファイルの中身を差分更新できます。

jar uf app.jar NewClass.class
# app.jar に NewClass.class を追加・更新する

大量のファイルを含む大きなjarファイルを扱う場合、毎回c(作成)で1から作り直すより、u(更新)で差分だけ反映する方が処理が速く済みます。ただし、更新を繰り返しているうちに不要な古いファイルが残ってしまうこともあるため、定期的にcで作り直してクリーンな状態を保つのも有効な運用です。実務では、日々の開発中はuで素早く反映し、リリース前には必ずcでクリーンビルドし直す、という使い分けが定番になっています。

✔️jar cf:新規作成(既存ファイルがあれば上書き)
✔️jar uf:既存jarへの差分更新(新規追加・上書き)
✔️jar cfe:新規作成 + Main-Classの同時指定
✔️jar cfm:新規作成 + 独自マニフェストファイルの組み込み
AI社員AIKATA|月30万円の定額で御社の業務をまるごと巻き取ります(無料相談60分)御社が減らせる固定費は月いくらか|公式LINEで質問に答えるだけ(無料・約1分)

04 jarファイルの実行方法 基本の実行から、classpath指定時のOS差異まで

実行可能jarファイルは、java -jarコマンドで直接実行できます。

java -jar app.jar

このコマンドが動くには、jarファイル内のマニフェストにMain-Classが正しく指定されていることが前提です。指定がない、またはクラス名が間違っている場合は、実行時にエラーになります。

4-1. classpathを指定して実行する

外部のライブラリ(別のjarファイル)に依存するプログラムを実行する場合は、-cp-classpathの略)オプションで、依存先のjarファイルも一緒に指定します。

# Windows環境
java -cp app.jar;lib\other.jar com.example.Main

# Linux / macOS環境
java -cp app.jar:lib/other.jar com.example.Main
⚠️ classpathの区切り文字はOSで異なる

classpathで複数のjarファイル・フォルダを指定する際の区切り文字は、Windowsではセミコロン(;)、Linux・macOSではコロン(:)です。この違いを知らずに他OS向けの手順をそのままコピペすると、正しく実行できません。チーム開発では、実行環境のOSに応じて手順を調整する必要があります。

📚 用語解説

classpath(クラスパス):Javaプログラムを実行する際、必要なクラスファイル・jarファイルがどこにあるかをJVM(Java仮想マシン)に伝えるための設定。複数の場所を指定する場合は、OSごとに定められた区切り文字(Windowsは;、Unix系は:)を使って並べます。

ソースコード
Main.java
javac
コンパイル
→ .classファイル
jar cfe
Main-Classを指定して
jar化
java -jar
実行可能jarを
そのまま実行
代表菅澤 代表菅澤
このソースコード→コンパイル→jar化→実行という一連の流れは、Javaプログラムを配布可能な形にする基本の型です。ここを理解しておくと、CI/CDでの自動ビルドの仕組みも読み解きやすくなります。

05 jarファイルの解凍・中身の確認方法 中身を取り出す・一覧を見る、それぞれの操作

5-1. jarファイルを解凍する

jarファイルの中身をファイルとして取り出したい場合は、x(extract)オプションを使います。

jar xf app.jar
# カレントディレクトリに中身が展開される

5-2. jarファイルの中身の一覧を見る

解凍せずに、jarファイルの中にどんなファイルが含まれているかだけを確認したい場合は、t(table)オプションを使います。

jar tf app.jar

# 出力例
META-INF/
META-INF/MANIFEST.MF
com/example/Main.class

v(verbose)オプションを追加すると、各ファイルの詳細な情報(サイズ・更新日時など)も一緒に表示されます。

jar tvf app.jar

5-3. マニフェストの中身だけを確認する

Main-Classの指定が正しく反映されているか確認したい場合は、マニフェストファイルだけを指定して解凍します。

jar xf app.jar META-INF/MANIFEST.MF
type META-INF\MANIFEST.MF   # Windowsの場合
cat META-INF/MANIFEST.MF    # Linux / macOSの場合
✔️jar tf:中身の一覧だけを確認(解凍しない)
✔️jar xf:中身をすべて解凍する
✔️jar xf ファイル名 対象パス:特定のファイルだけを解凍する
✔️マニフェストの内容確認は、トラブルシューティングの第一歩として有効

06 よくあるエラーと注意点 実務で頻出するトラブルを原因別に整理

症状主な原因対処法
no main manifest attribute(Main-Classが見つからない)マニフェストにMain-Classが指定されていないjar cfeで再作成するか、マニフェストファイルにMain-Classを追記
ClassNotFoundException依存先のクラス・jarがclasspathに含まれていない-cpオプションで必要な依存先をすべて指定
classpathの区切りが効かないOSごとの区切り文字(; と :)を間違えている実行環境のOSに合わせて区切り文字を修正
jar: command not foundJDKがインストールされていない、またはPATHが通っていないJDKのインストール状況とPATH環境変数を確認
💡 まずマニフェストを疑う

jarファイルの実行がうまくいかない時、多くの場合はマニフェストのMain-Class指定が原因です。前章で紹介したjar xf app.jar META-INF/MANIFEST.MFで中身を確認する癖をつけると、トラブルシューティングが早くなります。

代表菅澤 代表菅澤
エラーメッセージを見て慌てるより先に、まずマニフェストの中身を確認する——このワンクッションを挟むだけで、原因特定にかかる時間が大きく短縮されます。

6-1. バージョン不一致によるエラー

jarファイルをビルドした環境と、実行する環境のJavaバージョンが異なる場合、UnsupportedClassVersionErrorというエラーが発生することがあります。これは、新しいバージョンのJDKでコンパイルしたクラスファイルを、古いバージョンのJRE(実行環境)で動かそうとした際に起きる典型的な不一致です。

# エラー例
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/example/Main has been compiled by a more recent version of the Java Runtime

対処法は、コンパイル時に実行環境のバージョンに合わせて--releaseオプションを指定するか、実行環境側のJavaを最新版にアップデートすることです。開発環境と本番環境のJavaバージョンを揃えておくことが、そもそもの予防策として最も確実です。

💡 バージョンの確認コマンド

java -versionで実行環境のバージョン、javac -versionでコンパイラのバージョンを確認できます。ビルド環境と実行環境の両方で確認し、差異がないかチェックする習慣をつけておくと安心です。

AI社員AIKATA|月30万円の定額で御社の業務をまるごと巻き取ります(無料相談60分)御社が減らせる固定費は月いくらか|公式LINEで質問に答えるだけ(無料・約1分)

07 なぜビルドの細かいミスは経営リスクなのか 技術的な話を、経営者が判断できる言葉に翻訳する

ここまで解説してきた「Main-Classの指定漏れ」「classpathのOS差異」は、単なる技術的な手間ではなく、納期やコストに直結する経営リスクでもあります。

ビルド設定の
小さなミス

Main-Class
記述漏れ等
納品直前に
実行エラー発覚

検証環境で
初めて判明
納期遅延・
手戻りコスト

原因調査に
時間を要する

特に外部の開発会社やフリーランスにシステム開発を発注している場合、「納品されたjarファイルが検証環境で動かない」というトラブルは決して珍しくありません。原因の多くは、この記事で紹介したような基本的な設定ミスです。

✔️納品物(jarファイル等)を受け取った際、実行確認の手順が明文化されているか
✔️開発環境と本番環境でOSが異なる場合、classpath等の差異を考慮した引き継ぎがあるか
✔️「動作確認済み」の報告が、実際にどの環境で行われたものか確認できているか
代表菅澤 代表菅澤
外注先から「動作確認済みです」と言われても、それがどの環境での確認かまで確認しないと、本番での事故につながります。細部の確認を怠らない文化を、組織としてどう作るかが重要です。

08 Claude Codeでビルド事故を減らすという選択肢 弊社GENAIの実運用データで見る、パッケージングの確認フロー

弊社(株式会社GENAI)ではClaude Max 20xプラン(月額$200・約30,000円)を契約し、経営・営業・広告・開発・経理・秘書業務まで社内のあらゆる業務でClaude Codeを活用しています。開発領域では、ビルド設定の確認もその一つです。

Claude Codeは、「このjarファイルのマニフェストにMain-Classが正しく設定されているか確認して」と日本語で頼むだけで、中身を展開して確認し、問題があれば指摘してくれます。OSごとのclasspath指定の違いのような、見落としがちなポイントも機械的にチェックできる領域です。

チェック内容人力確認のみの場合Claude Codeを併用する場合
Main-Classの指定漏れ実行して初めて気づくことが多い事前にマニフェストの中身を確認
classpathのOS差異実行環境ごとに手順書を書き分ける必要該当環境向けのコマンドを都度生成
依存ライブラリの不足エラーログを見て手動で調査ClassNotFoundExceptionの原因を特定
確認にかかる時間担当者の稼働に依存即座に初期チェックが完了
🏆
VERDICT
Claude Code に軍配
「納品直前に発覚すると手戻りが大きい」領域ほど、事前の機械的チェックの効果が大きい。

弊社の開発領域(WordPress・LP制作・各種スクリプトの書き捨て等)では、成果物の受け渡し前にこうした確認作業をClaude Codeに任せることで、都度数時間かかっていた確認作業がその場で完結する肌感で削減できています。

AI鬼管理山崎 AI鬼管理山崎
「動くはず」を「動くことを確認した」に変える一手間を、Claude Codeに任せられるようになったのは大きな変化です。人が見落としやすいOS差異のようなパターンを、もう一段機械的にチェックする体制を作っています。
⚠️ 数値の注意書き

本章の削減時間は弊社の肌感ベースの参考値であり、業種・業態・担当者のスキルによって変動します。「完全自動化」ではなく、最終確認は引き続き人の判断が必要です。

8-1. 「納品後に発覚する」から「納品前に検知する」へ

弊社がClaude Codeを導入して最も大きく変わったのは、「動作確認」というプロセスが、納品後ではなく納品前の当たり前の工程になったことです。以前は、外注先やメンバーが作成したビルド成果物を受け取ってから初めて動作確認するケースもありましたが、現在は成果物が完成した時点でClaude Codeに確認を挟む運用に変えています。

これは、特別なスキルを持つ担当者を新たに雇う必要がないという点でも合理的です。「確認する」という行為自体は、技術に詳しくない人でもClaude Codeに依頼すれば実行できるため、担当者のスキルに依存しない品質チェック体制を作れます。

代表菅澤 代表菅澤
「誰が担当しても、最低限の確認は必ず通る」という状態を作れたのは、Claude Codeを導入した副次的なメリットとして大きいと感じています。

8-2. 外注先とのやり取りにも活用できる

外部の開発会社やフリーランスから納品物を受け取る際も、「この納品物を実際に動かして、想定通り動くか確認して」とClaude Codeに依頼することで、専門知識がなくても一次チェックを済ませられます。「動作確認済みです」という報告を鵜呑みにせず、自社でも簡易的な検証を行える体制は、発注者側のリスク管理として有効です。

09 まとめ ── 「作れた」と「動く」は別の基準 基本を正しく押さえたうえで、組織としての確認体制を両立させる

この記事では、jarファイルの基本構造から、作成・実行・解凍のコマンド、よくあるエラー、そしてそれが経営リスクにつながる構造までを整理しました。最後にポイントを振り返ります。

✔️jarファイルは複数のクラスファイルをまとめた、ZIP形式ベースのパッケージ
✔️作成の基本はjar cf app.jar Main.class、実行可能jarはjar cfe app.jar Main *.class(パッケージ使用時はディレクトリごと指定)
✔️実行はjava -jar app.jar。マニフェストのMain-Class指定が前提
✔️classpathの区切り文字はWindowsが;、Linux・macOSが:とOSで異なる
✔️解凍はjar xf、中身の一覧確認はjar tf
✔️「no main manifest attribute」等のエラーの多くはマニフェストの指定ミスが原因
✔️弊社GENAIではClaude Codeにビルド設定の確認を任せ、確認作業を都度数時間単位で削減している

jarファイルのコマンド自体はシンプルですが、「作れた」と「正しく動く」の間にギャップがある典型例です。このギャップを個人の注意力だけで埋め続けるのではなく、機械的なチェックを組み合わせて組織として確認体制を整える、という発想が重要になります。

次にjarファイルを作成・納品する、あるいは受け取る機会があれば、この記事で紹介したコマンド一覧とチェックリストを見返してみてください。「作れた」で終わらせず「動くことを確認した」まで一貫させることが、手戻りコストを防ぐ一番の近道です。

Javaに限らず、パッケージング・ビルドの工程は、開発の中でも特に地味で見落とされやすい領域です。だからこそ、確認の仕組みを整えている組織とそうでない組織の差が、トラブル発生時に大きく表れます。日頃の小さな確認の積み重ねが、いざという時の信頼につながります。

代表菅澤 代表菅澤
弊社では「AI鬼管理」というサービスで、Claude Codeを使った業務自動化・開発リスク管理の設計から伴走まで支援しています。納品物の確認フローの仕組み化を含め、どこまで任せられるか無料相談でお答えしますので、お気軽にどうぞ。

納品物の確認フローを、Claude Codeで仕組み化しませんか

マニフェストの指定漏れのような細かいミスを、個人の注意力だけに頼らない体制づくりを支援します。
弊社の実運用ノウハウをベースに、個別に導入設計のご相談を承ります。

AI鬼管理山崎 AI鬼管理山崎
「外注先の納品物をどう確認すればいいか分からない」「社内に開発のレビュー体制がない」という方に最適です。まずは無料相談で、あなたの会社に合った任せ方を一緒に見つけましょう。

ここから先の進め方は、大きく2つあります。

自社で回せるようになりたい方は、AI鬼管理でClaude Code/Codexの使い方から業務設計・社内定着まで伴走を受けながら、社内に仕組みを作る道があります。

覚えるより任せたい方は、AI社員AIKATAでこの記事のような定型業務を丸ごと預ける道があります。料金は月30万円の月額定額、追加費用は0円です。

どちらが合うかは、業務量と社内体制次第です。無料相談・無料適合診断で、貴社の場合はどちらが向くかからご相談いただけます。

NEXT STEP

この記事の内容を、あなたのビジネスで
実践してみませんか?

AI鬼管理 — Claude Code導入支援トレーニング

AI活用を自社で回せるようになりたい方へ

AI鬼管理

Claude Code・Cowork導入支援から業務設計・社内浸透まで実践ベースで伴走。「自社で回せる組織」を90日で作る経営者向けトレーニング。

AI社員AIKATA — 定型業務の丸ごと代行

業務を丸ごと任せたい方へ

AI社員AIKATA

請求処理・データ入力・問い合わせ対応などの定型業務を、AI×人の品質管理体制で丸ごと代行。月30万円の定額でまかせ放題、日々は成果物を承認するだけ。

よくある質問

Q. java -jarで実行すると「no main manifest attribute」と出るのはなぜですか?

A. jarファイルのマニフェストにMain-Classが指定されていないためです。jar cfeコマンドでエントリポイントを指定して作成し直すか、Main-Classを記載したマニフェストファイルを使って再作成してください。

Q. classpathの区切り文字を間違えるとどうなりますか?

A. 指定した依存先が正しく認識されず、ClassNotFoundExceptionなどのエラーになります。Windowsはセミコロン(;)、Linux・macOSはコロン(:)と、OSによって区切り文字が異なる点に注意してください。

Q. jarファイルはZIP解凍ソフトで開けますか?

A. 開けます。jarファイルは内部的にZIP形式と同じ圧縮方式が使われているため、拡張子を.zipに変更すれば一般的な解凍ソフトでも中身を確認できます。ただし実務ではjarコマンドを使う方が確実です。

Q. マニフェストファイルを手動で作る際の注意点は何ですか?

A. 最終行の末尾に改行を入れておくことが重要です。改行がないと、記述したMain-Class等の指定が正しく認識されないことがあります。保存後にファイルの末尾を確認する習慣をつけると安心です。

Q. 実行可能jarとライブラリ用jarの違いは何ですか?

A. 実行可能jarはマニフェストにMain-Classが指定されており、java -jarコマンドで単体実行できます。ライブラリ用jarはMain-Classを持たず、他のプログラムからクラスパス経由で読み込まれる前提で作られます。

Q. 非エンジニアの経営者は、こうしたビルドの細部をどこまで理解すべきですか?

A. コマンドを暗記する必要はありませんが、「納品直前に発覚すると手戻りが大きい」という構造は理解しておくべきです。そのうえで、Claude Codeなどによる機械的な確認体制を組織としてどう作るかを判断するのが経営者の役割です。

Q. UnsupportedClassVersionErrorが出た場合、どう対処すればいいですか?

A. ビルド環境と実行環境のJavaバージョンが一致していないことが原因です。java -versionとjavac -versionで両者のバージョンを確認し、実行環境に合わせてコンパイル時の--releaseオプションを指定するか、実行環境のJavaをアップデートしてください。

Q. jarファイルとwarファイル、社内ツールを作る場合どちらを使えばいいですか?

A. 単体で動くデスクトップアプリやコマンドラインツールであればjarファイルで十分です。ブラウザからアクセスするWebアプリケーションとして提供する場合は、Tomcat等にデプロイするwarファイルの形式を検討してください。

AIAI鬼管理

AI鬼管理/AI社員AIKATAへのお問い合わせ

この記事を読んで気になった方へ。
専門スタッフが、御社に最適な
業務自動化・業務代行プランを無料でご提案します。

サービスを選択してください

会社名を入力してください
業種を選択してください
お名前を入力してください
※法人・事業用のメールアドレスでお願いします(Gmail等の個人用フリーメールは受付できません)
正しいメールアドレスを入力してください

1つ以上選択してください
1つ以上選択してください
月額コストを選択してください

約1時間のオンライン面談(Google Meet)です

空き枠を取得中...
面談日時を選択してください

予約確定後、Google Calendarの招待メールをお届けします。
しつこい営業は一切ございません。

監修 最終更新日: 2026年9月11日
菅澤孝平
菅澤 孝平 株式会社GENAI 代表取締役
  • AI業務自動化サービス「AI鬼管理」を運営 — Claude Code を活用し、経営者の業務を「AIエージェントに任せる仕組み」へ転換するパーソナルトレーニングを 伴走構築 で提供。日報・採用・問い合わせ対応・経費精算・議事録・データ集計・営業リスト等の定型業務を、AIに代行させる体制を経営者と一緒に作り込む
  • Claude Code 実装ノウハウを 経営者・法人クライアント に直接指導。生成AIを「便利ツール」ではなく 「業務を任せる存在」 として運用する手法を体系化
  • 「やらせ切る管理」メソッドの開発者。シンゲキ株式会社(2021年設立・鬼管理専門塾運営)にて累計3,000名以上の学習者を志望校合格に導いた管理メソッドを、AI × 経営者支援 に転用
  • 著書『3カ月で志望大学に合格できる鬼管理』(幻冬舎)、『親の過干渉こそ、最強の大学受験対策である。』(講談社)
  • メディア出演: REAL VALUE / カンニング竹山のイチバン研究所 / ええじゃないかBiz 他
  • 明治大学政治経済学部卒
現在は AI鬼管理(Claude Code活用の伴走型パーソナルトレーニング)を主事業とし、経営者と二人三脚で「AIに業務を任せる仕組み」を実装。「実行を強制する環境」を AI で構築する手法を、自社の実運用知見をもとに発信している。