はじめに
VSCode+GradleでRustを「とりあえず」動かすにはどうしたらいいのかメモ的に書きます。
今回は主に先人の知恵として下記拝見して、試行錯誤で組み立てた結果です。先人の皆さま、いつもありがとうございます。
@udayan28さま
Rustの環境構築 with VSCode - Qiita
0. 環境
利用したツールと実行環境は以下のとおりです。Cargo
- Linux Mint 19.3
- Rust 1.41.0 (5e1a79984 2020-01-27)
- Cargo 1.41.0 (626f0f40e 2019-12-03)
- VSCode(code) 1.42.1
なお、タイトルの手順にフォーカスするため、個々のツールのインストールについては割愛します。
Rustのインストール手順は以下を参照ください。
The Rust Programming Language - Installation
1. CargoでHelloを動かしてみる
(1) まずCargoを使わずにHelloする
まず、Cargoすら使わずにHelloを表示することを試しておきます(Rustの動作確認のようなものです)。
ここは本家サイトの手順をリンク掲載します。本家サイトの方が常に最新となるからです。
Writing and Running a Rust Program
(2) CargoでのHello
以下のようにしてCargoでプロジェクトを作成し、実行してみます。
ximia@thinkpad:~/dev/rust/projects$ cargo new hello_cargo
Created binary (application) `hello_cargo` package
ximia@thinkpad:~/dev/rust/projects$ ls
hello_cargo hello_world
ximia@thinkpad:~/dev/rust/projects$ ls -R hello_cargo/
hello_cargo/:
Cargo.toml src
hello_cargo/src:
main.rs
ximia@thinkpad:~/dev/rust/projects$ cd hello_cargo/
ximia@thinkpad:~/dev/rust/projects/hello_cargo$ cargo build
Compiling hello_cargo v0.1.0 (/home/ximia/dev/rust/projects/hello_cargo)
Finished dev [unoptimized + debuginfo] target(s) in 0.22s
ximia@thinkpad:~/dev/rust/projects/hello_cargo$ cargo run
Finished dev [unoptimized + debuginfo] target(s) in 0.00s
Running `target/debug/hello_cargo`
Hello, world!
ximia@thinkpad:~/dev/rust/projects/hello_cargo$
2. VSCodeにCargoプロジェクトを取り込む
(1) hello_cargoフォルダを取り込む
[File] --> [Add Folder to Workspace] でCargo.tomlを格納しているフォルダをVSCodeのWorkspaceに取り込みます。
(2) Rust/Toml用のプラグインを入れる
以下のように2つのプラグインをインストールします。
(a) Rusl (rls)
Rustのシンタックス・ハイライト、コード補完など基本的なところを補ってくれるプラグインをインストールします。
画面右側の通り、シンタックス・ハイライトが有効になっています。
(b) toml
Cargo.tomlでTOMLをハイライトしてくれるプラグインです。
こちらも画面右側の通り、シンタックス・ハイライトが有効になっています。
(3) tasks.jsonを生成、書き換える
[Terminal] --> [Configure Tasks...] --> [Create tasks.json file from template] --> [Others] により、テンプレートから tasks.json を生成します(図は [Create tasks.json file from template] を選ぶところ)。
プロジェクトのフォルダツリー上、.vscodeの下に tasks.json ができますので、以下の内容でまるっと置き換えます。
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"type": "cargo",
"subcommand": "build",
"problemMatcher": [
"$rustc"
],
"group": "build"
},
{
"type": "cargo",
"subcommand": "run",
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
3. 実行
試しに "Hello, world!" を "Hello, Rust!" と変更・保存して、[Teminal] --> [Run Build Task...] と選択します。
以下のように、Compiling... Hello, Rust!となれば、無事実行完了です!
他のtaskもtasks.jsonに同様に追加していくことでさらに開発しやすくなると思います。
=== END ===