こんにちわ、みけです。
くっそタイトルが長いのですが、
ちょっと一昨日くらいにハマったので
メモ代わりに書いとこうと思ったので…
問題 : OpenJDK1.7以上で日本語を含むソースコードをコンパイルするとエラーが発生する
日本語をソースに書かない人は特に問題ないのですが、
日本人だったら結構やりますね。
- Javadocに日本語でドキュメントを書いている
- テストコードのテスト名とかに日本語を書いている
- 日本語のテストデータを使っている
こういうシーンは多々あると思います。
これらのコードをheroku上でコンパイルするとほぼ確実にエラーが発生するようです。
理由 : herokuのOpenJDK1.7はdefalut character encodingがUS-ASCIIだから
まあ、ググってたら、たまたま同じような問題を抱えていた人がいたので、
そこへのリンクを掲載しますねー。
解決策
上記のstackoverflow曰く、
heroku config:add JAVA_TOOL_OPTIONS='-Dfile.encoding=UTF-8'
を使ってherokuの環境変数を設定しろとのこと。
僕もこの設定をすることで、
テストコードの日本語とかJavadocの日本語とか全然問題なくなりました。
というわけで、enjoy heroku java!ということで~