Saturday, March 30, 2019 / Windows10, Review, Linux

Windows10 と Subsystem for Linux

前のエントリーで Chromebook + crostini を試したとき vim, emacs 用の日本語入力環境を簡単には用意できなかった。 そこで、 Windows10 + Subsystem for Linux ならどうなのかと思い試してみました。 結論から言うと 難しい設定などは一切なしに vim で問題なく日本語入力ができました。 emacs-nox の方はデフォルトの状態では日本語入力問題あるみたいです。 Windows10 なら Chromebook とは違い ATOK も使えるし、なかなか素敵なのではないかと。

しかし、Windows10 は相変わらずインストールが面倒でした。 Subsystem for Linux をインストールするのは簡単なんですが、そこにたどり着くまでが大変。 回復ドライブから復元するところからはじめたのですが、 ひたすら待たされる、更新が完了したかと思ったらまた更新、というプロセスが続き いつものことながら 心が折れそうになりました。

Windows10 の更新がすべてすんだあとは、 ストアから Ubuntu 18.04 を探してインストールするだけで使えました。 vim は最初からインストールされているし、emacs-nox も apt install するだけです。

Java + Gradle で開発ができるか確認するために Chromebook + crostini で試したのと同じこともやってました。

sudo apt install gradle

crostini では openjdk-8-jdk もインストールする必要がありましたが、こちらは、 gradle だけ apt install したら動きました。 gradle を実行すると以下のような警告が出るのは気になりましたが、とりあえず Hello World! を build して run する分には支障がなさそうです。

WARNING: An illegal reflective access operation has occurred

試した Hello World! プロジェクトは以下の通り。

build.gradle ファイル

plugins {
    id 'java'
    id 'application'
}

mainClassName="Main"

sourceCompatibility = '1.8'
targetCompatibility = '1.8'
version = '1.0.0'

Main.java

public class Main {
    public static void main(String[] args){
       System.out.println("Hello World!");
    }
}

build.gradle は ./helloworld/build.gradle に配置。 Main.java は ./helloworld/src/main/java/Main.java に配置。

あとはビルドして実行するだけです。

cd helloworld; gradle build; gradle run
Hello World!

以上です。