皆さんこんにちは。
Java Advent Calendar 2020(Qiita)24日目の記事を書かせていただきます。
はじめに
Javaでの開発が長いのですが、案件で使うエディタと言えば、eclipse(またはSTS)かIntelliJ IDEAが多かった私。InteliJに慣れてしまうと、ライセンス払ってでもInteliJ一択!だったんですが、ふと触ってみたVisual Studio Codeがいい感じ!だったんです。本記事では、Visual Studio CodeでJavaの開発環境を構築していきたいと思います。
また、今回はJavaの開発で使われることが多い「Spring MVC, Spring Boot」(フレームワーク)で作る簡易アプリケーションも合わせて作ってみたいと思います。
想定開発環境
OS: Windows10
Visual Studio Code: 1.51.1(2020年12月)
※ VSCode, JDKのインストールは既に済んでいる前提
JDKのインストールについては、以前記事を書いているので、そちらをご参照ください!
Amazon Corretto11 インストール
手順(3ステップ)
- Java Extension Packインストール
- Javaを動かしてみよう!
- Spring Bootアプリケーションを作ってみよう!
手順1: Java Extension Packインストール
- Visual Studio Codeを起動し、拡張機能:Java Extension Pack をインストールします。
-
Java Extension Pack
https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack
その他、よく使いそうな他の拡張機能もインストールしておきましょう。
-
Maven for Java
https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-maven -
Spring Boot Extension Pack
https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-boot-dev-pack
手順2: Javaを動かしてみよう!
- Visual Studio Codeで「コマンドパレット」(Ctrl + Shift + p)を表示、[Java: Create Java Project] コマンドを実行してJavaプロジェクトを作成する。
>Java: Create Java Project
No build tools
※ 作成するJavaプロジェクトの名前を入力→プロジェクトの作成完了
- 作成されるJavaプロジェクトのファイルとディレクトリ構成
helloworld
├── lib
└── src
└── App.java
デフォルトで作成される「App.java」をコンパイルし、生成されたクラスファイルを実行 →
"Hello, World!"が表示される。
$ javac App.java
$ java App
Hello, World!
手順3: Spring Bootアプリケーションを作ってみよう!
手順2で「Spring Boot Extension Pack」を入れたので、Spring Bootアプリケーションを作ってみます。
プロジェクトの作成
- Visual Studio Codeで「コマンドパレット」(Ctrl + Shift + p)を表示、Spring bootのプロジェクトを作成します。
コマンドパレットでの操作
1.「Spring Initializr: Generate a Maven Project」を選択
2. 「Specify Spring Boot version」 Spring Bootのバージョンを選択します。今回は特に指定がないので、2020/12時点の最新(2.4.0)を選択
3. 「Specify project language」使用する言語を選択。今回はJavaを選択
4. 「Input Group Id」パッケージ名を入力。
例:com.example
5. 「Input Artifact Id」プロジェクト名を入力。
例:demo
6. 「Specify packaging type」パッケージタイプ:今回はwarにします。(jarでもOK)
7. 「Specify Java type」使用するJavaのバージョンが求められるので、使用するJavaのバージョンを選択。今回はJava14を使用。
8. 「Search for dependencies」Mavenプロジェクトなので、依存関係を選択があります。今回は、「Webアプリを作る」「画面を表示させる」という目的があるので、以下2つを選択します。
ここまでやると、プロジェクトの保存先を聞かれます。プロジェクトの保存場所を選択してください。
- 作成されるディレクトリは以下のような構成です。
- DemoApplication.java, ServletInitializer.javaがデフォルトで実装されています。
|― src
| |― main
| | |― java
| | | |― com
| | | |― example
| | | |― demo(プロジェクト名)
| | | |― DemoApplication.java(デフォルトで作成される)
| | | |― ServletInitializer.java(デフォルトで作成される)
| | |― resources
| | |― static/ (静的ファイル)
| | |― templates/ (テンプレートファイル)
| | |― application.properties (環境独自の設定ファイル)
| |― test
| |― java
| |― com
| |― example
| |― demo(プロジェクト名)
| |― DemoApplicationTests.java
|― .gitignore
|― HELP.md
|― mvnw
|― mvnw.cmd
|― pom.xml (Mavenの設定ファイル)
アプリケーションの作成
- \demo\src\main\java\com\example\demo\controller ディレクトリ配下にControllerクラスを作成します。(SampleController.java)
package com.example.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class SampleController {
@RequestMapping("/sample")
public String sample() {
return "sample";
}
}
\demo\src\main\templates内にsample.htmlを作成します。(sample.html)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Sample</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
- Spring bootアプリケーションの実行
VSCode左下の「SPRING-BOOT DASHBOARD」を選択し、[start] or [debug] を選択
※ Spring Bootに内包されたTomcatが起動し、実装したアプリがコンパイルされる。
表示確認
- ブラウザにて表示確認。"Hello World!"と表示されるはずです。
http://localhost:8080/sample
終わりに
拡張機能が充実していて、想像以上に使いやすかったです!InteliJのライセンス更新をせずにVSCodeを使い続けようか悩んでいる所です・・・。今後はより実践的なJavaの記事を上げていけるように努力していきます。
最終日は@tkxlabさんです!
参考
Spring BootをVSCodeで「Hello World」を表示させてみた
https://tech-lab.sios.jp/archives/19941