「Javaのコンパイルで、ソースファイルのエンコーディングを UTF-8にするには」の版間の差分

提供: tknotebook
移動: 案内検索
 
(1人の利用者による、間の3版が非表示)
10行: 10行:
  
 
Gradle の Java の既定のソースセットのソースファイルのエンコードを UTF-8にするには
 
Gradle の Java の既定のソースセットのソースファイルのエンコードを UTF-8にするには
build.gradle
+
build.gradle で各ソースセットのコンパイル用のタスクのプロパティ options.ecncoding を
 
+
変更します。
 
  compileJava.options.encoding = 'UTF-8'
 
  compileJava.options.encoding = 'UTF-8'
 
  compileTestJava.options.encoding = 'UTF-8'
 
  compileTestJava.options.encoding = 'UTF-8'
17行: 17行:
 
と書くのが簡単です。
 
と書くのが簡単です。
  
この書き方では main と test の2個のソースセットしか UTF-8 になりません。
+
但し、ソースセットを追加した場合は追加記述が必要です。
ソースセットを追加した場合は追加記述が必要です。
+
普通はこれで十分ですし、ソースセットが増えてもちょっと書くことが増えるだけですが、
普通はこれで十分ですし、ソースセットが増えてもちょっと書くことが増えるだけが、
+
 
全てのソースセットのJavaソースファイルのエンコーディングを UTF-8 にするには
 
全てのソースセットのJavaソースファイルのエンコーディングを UTF-8 にするには
  
26行: 25行:
 
  }
 
  }
  
とします。
+
とします。これはJavaCompile型のタスクを抽出して、全てのプロパティを変更します。

2016年8月26日 (金) 06:09時点における最新版

メインページ>コンピュータの部屋#Gradle>Gradle Tips

Javaに限らず多くのプログラミングでは、ソースファイルのエンコーディングに UTF-8 を使うことが多くなってきました。

しかし Gradle の Javaプラグインによるコンパイルは 既定では、Javaソースの エンコーディングはシステムのデフォルト(日本のWindowsでは MS932) です。

Gradle の Java の既定のソースセットのソースファイルのエンコードを UTF-8にするには build.gradle で各ソースセットのコンパイル用のタスクのプロパティ options.ecncoding を 変更します。

compileJava.options.encoding = 'UTF-8'
compileTestJava.options.encoding = 'UTF-8'

と書くのが簡単です。

但し、ソースセットを追加した場合は追加記述が必要です。 普通はこれで十分ですし、ソースセットが増えてもちょっと書くことが増えるだけですが、 全てのソースセットのJavaソースファイルのエンコーディングを UTF-8 にするには

tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}

とします。これはJavaCompile型のタスクを抽出して、全てのプロパティを変更します。