教材トップシステムの歩き方
PDF で保存
研修で使う環境を、ご自身の PC に用意していただきます。手順は8ステップです。うまくいかないところがあれば、当日を待たずに研修事務局までご連絡ください。前日までにご連絡いただければ、開始までに解消できます。
回線と PC の性能で前後します。待ち時間が大半なので、他の作業をしながらで構いません。
wget・unzip・jq の3つと、文字コードの設定です。Step 3 の apt install の行と Step 6 は、実施済みの方も必ず実行してください。Step 6 を飛ばすと Day3 の演習1がコンパイルできません。
Windows 側と Ubuntu 側で入れるものが分かれます。どちらに何を入れるかだけ、先に押さえておいてください。
| 場所 | 入れるもの | Step |
|---|---|---|
| Windows | WSL2、VSCode 本体、VSCode 拡張3本 | 1・7 |
| Ubuntu 22.04(WSL の中) | OpenJDK 17、Maven 3.9.15、Claude Code、配布データ | 2〜6・8 |
コードを書くのも、ビルドするのも、Claude Code を動かすのも、すべて Ubuntu 側です。VSCode は Windows 側で起動して、そこから Ubuntu につなぎます。
上から順に進めてください。Step 8 で全体がつながっているかを確かめます。
Windows の中で Linux を動かす仕組みです。すでに入っている方は、確認だけして Step 2 へ進んでください。
Windows のコマンドプロンプト(管理者)スタートメニューで cmd と入力し、出てきた「コマンド プロンプト」を右クリックして「管理者として実行」を選びます。
wsl --install
終わったら PC を再起動してください。再起動しないと次のステップが動きません。
再起動後・コマンドプロンプト(管理者でなくて可)wsl --version
次のような表示が返れば入っています。
WSL version: 2.x.x.x Kernel version: 5.15.x.x-microsoft-standard-WSL2 Windows version: 10.0.x.x
WSL version: 2 で始まる行が出るWSL version が 1 系だった場合は、wsl --set-default-version 2 を実行してから Step 2 へ進んでください。研修の題材は WSL1 でも動きますが、ビルドが目に見えて遅くなります。WSL の上で動かす Linux の中身です。バージョンは 22.04 に揃えてください。
Windows のコマンドプロンプトwsl.exe --install Ubuntu-22.04
途中でユーザー名とパスワードを聞かれます。ユーザー名は英小文字と数字だけにしてください。ここで決めたパスワードは、あとで sudo を打つたびに使います。忘れないよう控えておいてください。
設定が終わると、そのままプロンプトが Ubuntu のものに変わります。以降の作業はここで行います。
Ubuntu のターミナル# どこで動いているかを確認する
uname -a
Linux <hostname> 5.15.x.x-microsoft-standard-WSL2 #1 SMP ... x86_64 GNU/Linux
# パッケージを最新にする(数分かかります)
sudo apt update
sudo apt upgrade -y
uname -a に microsoft-standard-WSL2 が含まれるUbuntu を検索するか、コマンドプロンプトで wsl と打ちます。プロンプトが ユーザー名@ホスト名:~$ の形なら Ubuntu 側です。Java を動かすための実行環境です。研修の題材は Java 17 で動きます。
Ubuntu のターミナルsudo apt install -y openjdk-17-jdk curl wget unzip jq
JDK のほかに4つ入れています。curl は Step 5 の Claude Code 導入、wget は Step 4 の Maven 取得、unzip は Step 8 の配布データ展開、jq は Day3 で API の応答を読むときに使います。すでに入っているものは飛ばされるので、そのまま実行してください。
# JAVA_HOME を設定して、次回以降も有効にする
echo 'export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java))))' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
# 確認する
java -version
echo $JAVA_HOME
openjdk version "17. で始まる行と、/usr/lib/jvm/java-17-openjdk-amd64 が出るJava プロジェクトをビルドして、テストを走らせる道具です。
apt で入る Maven は 3.6 系で古いため、公式サイトから 3.9.15 を直接取ってきます。
# ホームディレクトリで作業する
cd ~
MVN_VERSION=3.9.15
wget https://archive.apache.org/dist/maven/maven-3/${MVN_VERSION}/binaries/apache-maven-${MVN_VERSION}-bin.tar.gz
# 展開して /opt/maven に置き、書庫は消す
MVN_VERSION=3.9.15
tar -xzf apache-maven-${MVN_VERSION}-bin.tar.gz
sudo mv apache-maven-${MVN_VERSION} /opt/maven
rm apache-maven-${MVN_VERSION}-bin.tar.gz
# パスを通して、次回以降も有効にする
echo 'export M2_HOME=/opt/maven' >> ~/.bashrc
echo 'export PATH=$M2_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
# 確認する
mvn -v
Apache Maven 3.9.15 と Java version: 17 の2行が出るmvn を使います。 配布データの中に mvnw というファイルが入っていますが、こちらは使いません。Maven を入れていない環境向けの補助で、使うと Maven をもう一組ダウンロードしに行きます。ターミナルで動く AI のコーディング支援ツールです。研修の主役になります。
Ubuntu のターミナルcurl -fsSL https://claude.ai/install.sh | bash
# 置き場所にパスを通して、次回以降も有効にする
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
# 確認する
claude --version
2.1.234 (Claude Code) のようにバージョンが返ります。数字は導入した時期で変わります。
続けてログインします。初回だけ必要です。
claude
/exit と打って、いったん終了しますclaude を起動したとき、ログインを求められずに入力欄が出るsource ~/.bashrc を打ち直すか、exit でいったん Ubuntu を抜けて wsl で入り直してください。パスの設定は、シェルを開き直さないと反映されないことがあります。Ubuntu の初期状態は、日本語を扱えない文字コードになっていることがあります。このまま進めると Day2 と Day3 の演習で、日本語が ? に化けて期待どおりの結果が出ません。
locale
最初の行が LANG= のあとに何もない、または UTF-8 で終わっていない場合は、次を実行してください。
echo 'export LANG=C.UTF-8' >> ~/.bashrc source ~/.bashrc
# 設定できたかを確認する
locale charmap
locale charmap が UTF-8 と返すUTF-8 と返った方へ。 何もしなくて構いません。Step 7 へ進んでください。ANSI_X3.4-1968 のままだと、日本語を含む Java ファイルがコンパイルできません。Day3 の演習1は、まさにそのファイルを扱います。研修の教材ではコマンド側でも文字コードを指定しているので二重の備えになりますが、ここで設定しておくほうが確実です。コードを書くエディタです。本体は Windows 側に入れて、拡張機能で Ubuntu につなぎます。
Windows のブラウザ起動したら Ctrl+Shift+X で拡張機能の一覧を開き、次の3本を検索して入れます。ID で検索すると確実です。
| 拡張機能 | ID | 何のために |
|---|---|---|
| WSL | ms-vscode-remote.remote-wsl | Ubuntu 側のファイルを開くため |
| Extension Pack for Java | vscjava.vscode-java-pack | Java の補完とエラー表示 |
| Spring Boot Extension Pack | vmware.vscode-boot-dev-pack | Spring Boot の設定ファイル補完 |
入れ終わったら、VSCode の左下にある >< のアイコンをクリックして、「Connect to WSL」を選びます。初回は VSCode Server のダウンロードが自動で走るので、数分かかります。
WSL: Ubuntu-22.04 と表示されるJapanese Language Pack を入れてください。研修は日本語表示でも英語表示でも進められます。研修で手を動かすプロジェクト一式を置いて、ここまでの7つがつながっているかをまとめて確かめます。
Windows のブラウザ教材トップの「配布データ」から id-cc-handson_20260903.zip をダウンロードします。保存先は既定の「ダウンロード」フォルダのままで構いません。
# Windows 側のダウンロードフォルダから持ってくる
cd ~
cp /mnt/c/Users/*/Downloads/id-cc-handson_20260903.zip ~/
unzip id-cc-handson_20260903.zip
rm id-cc-handson_20260903.zip
~/handson ができます。ZIP の中身が handson フォルダから始まるので、展開先を指定する必要はありません。
# 中身を確認する
cd ~/handson
ls
src、docs、exercises、CLAUDE.md が並んでいれば展開できています。
ここから動作確認です。上から順に打ってください。
# ビルドが通るかを確認する(初回は依存関係の取得で数分かかります)
mvn clean compile
最後に BUILD SUCCESS と出れば通っています。
# アプリを起動する
mvn spring-boot:run
Started OrderApplication という行が出たら起動しています。Windows のブラウザで http://localhost:8080/api/orders を開いてください。次のように、受注データが1かたまりの文字列で表示されます。
確認できたら、ターミナルで Ctrl+C を押してアプリを止めてください。
最後に、VSCode から同じフォルダを開けることを確かめます。VSCode で WSL: Ubuntu-22.04 につないだ状態で「ファイル」から「フォルダーを開く」を選び、/home/<ユーザー名>/handson を指定してください。
mvn clean package と mvn test は、いま実行すると失敗します。研修の演習で直すためのバグが仕込んであり、テストが1件わざと赤くなるためです。環境の問題ではありません。Day2 で実際に走らせます。6つとも当てはまれば、当日そのまま始められます。ひとつでも引っかかったら、前日までにご連絡ください。
java -version が 17 系を返す
openjdk version "17. で始まる行が出るmvn -v が 3.9.15 と Java version 17 を返す
Maven home: /opt/mavenlocale charmap が UTF-8 を返す
ANSI_X3.4-1968 のままだと Day3 で詰まりますclaude を起動すると、ログインを求められずに入力欄が出る
claude --version でもバージョンが返るcd ~/handson && mvn clean compile が BUILD SUCCESS で終わる
初回は数分かかるWSL: Ubuntu-22.04 で、~/handson を開ける
左側に src / docs / exercises / CLAUDE.md が見えるよくある詰まりどころです。当てはまらない場合は、次の項目にある診断コマンドの結果を添えてご連絡ください。
exit で Ubuntu を抜けて wsl で入り直してください。それでも変わらない場合は claude doctor を実行し、その出力を添えてご連絡ください。導入の状態と設定ファイルの問題を診断してくれます。echo 'export M2_HOME=...' >> ~/.bashrc を実行したあと、source ~/.bashrc を打ち忘れていることが多いです。Ubuntu を開き直しても直ります。ls /opt/maven/bin/mvn でファイル自体があるかを先に確かめてください。ls /mnt/c/Users/*/Downloads/ | grep handsonそれでも見つからないときは、Windows のエクスプローラーでファイルの場所を確認し、
C:\Users\yamada\Downloads なら /mnt/c/Users/yamada/Downloads と読み替えて指定してください。rm -r ~/handson でいったん消し、Step 8 のとおり Ubuntu のターミナルで unzip を使って展開し直してください。配布 ZIP は UTF-8 で作ってあるので、locale の設定に関係なく正しい名前で展開されます。Started OrderApplication が出ているかを見てください。出ていれば起動しています。それでも開かないときは、Ubuntu 側で curl http://localhost:8080/api/orders を打ってみてください。ここで返るなら Windows とのポート共有の問題なので、当日ご相談ください。切り分けが早くなります。分かる範囲で構いません。
# この4つの出力をコピーして添えてください
java -version
mvn -v
locale
claude doctor
どのステップで、どんなメッセージが出たかも書き添えてください。画面のスクリーンショットでも構いません。