会社が休みだったので、最近ずっと進化し続けているVisual Stuido Code(以下VSCode)でJavaの環境を整えてみた。
プラットフォームはUbuntu18.04。Gradleも使ってみる。
VSCodeインストール
公式からダウンロードしてもいいが、UbuntuならばUbuntu Makeが使えるので、これで入れてもいい。今だとバージョン1.28.2がインストールされた。
umake ide visual-studio-code
umake --version
> 16.11.1
Java Extension Packプラグイン
プラグイン検索に"java"って入力するとたくさん出てくるが、「Java Extension Pack」を入れると以下のプラグインがまとめて入っているらしいので、これを入れることにする。
- Language Support for Java™ by Red Hat
- Debugger for Java
- Java Test Runner
- Maven Project Explorer
再読み込みのために再起動すれば完了。
Javaの準備
最新はJava11だけど今回は元々入っていたJava8で代用。
インストール手順は、ググればいくらでもヒットするのでここでは割愛。
$JAVA_HOME
くらいは確認しておく。
echo $JAVA_HOME
> /usr/lib/jvm/java-8-oracle
Gradleの準備
公式には現在最新は4.10.2と書いてあるが、aptでインストールされた3.4.1を使った。
apt install gradle
プロジェクトディレクトリ生成
gradleがあれば簡単に作れるので全てお任せした。
--type java-application
を指定するのがポイント。
mkdir project_name_dir
cd project_name_dir
gradle init --type java-application
tree
.
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── src
├── main
│ └── java
│ └── App.java
└── test
└── java
└── AppTest.java
ちなみに、build.gradleの中身はこんな感じ(コメント行は削除)
apply plugin: 'java'
apply plugin: 'application'
repositories {
jcenter()
}
dependencies {
compile 'com.google.guava:guava:20.0'
testCompile 'junit:junit:4.12'
}
mainClassName = 'App'
動作確認
gradleを使って一通り使いそうなタスクを実行してみる。
雛形のままなので全部問題なく動くはず。
gradle build
gradle run
gradle check
gradle clean
VSCodeの設定
作成したプロジェクトディレクトリを選択して作業する。
JAVA_HOMEの設定
settings.json
の"java.home"に$JAVA_HOME
の値を設定する。
直接ファイルを編集してもいいし、GUIで設定してもいい。
grep java.home ~/.config/Code/User/settings.json
> "java.home": "/usr/lib/jvm/java-8-oracle"
タスクの設定
.vscode/tasks.json
にgradleコマンドを実行するように設定する。
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "./gradlew build"
},
{
"label": "run",
"type": "shell",
"command": "./gradlew run",
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "clean",
"type": "shell",
"command": "./gradlew clean"
},
{
"label": "check",
"type": "shell",
"command": "./gradlew check"
}
]
}
タスクの実行
F1
キー → "run task" → tasks.jsonに設定したタスクを選択。
デフォルトタスクrun
を実行するときはCtrl
+ Shift
+ B
でいい。
ブレークポイントを設定していると、その場所で止まってくれるので特に意識せずデバッグできた。
所感
ちょっと触っただけなのでまだなんとも言えないが、
- パッケージ名などディレクトリ名まで含めたリファクタリングはできなかった
- コードジャンプなどのショートカットキーがVisual Studioに似ている(eclipseユーザは戸惑うかも)
- ドキュメンテーションコメントアウトの補完をもう少し頑張って欲しい
今後の成長に期待したい。