These are chat archives for scalajp/functional

13th
Mar 2015
kenji yoshida
@xuwei-k
Mar 13 2015 03:39
functional javaのScala移植、Listの要素がほとんど同じ値になってしまうという問題に遭遇・・・
Taisuke Oe
@taisukeoe
Mar 13 2015 05:21
まだちゃんとretrolambdaのソース読めてないですが、retrolambda自身はJava8しか使用しないけど、gradle-retrolambda pluginがテスト時にJava7以下のランタイムを使用する(そりゃそうか)ので、gradle-retrolambda pluginを使ってるfunctional javaはJava8とJava7がビルドに必要になるってメカニズムだと思います
Taisuke Oe
@taisukeoe
Mar 13 2015 05:46
ビルドが超面倒って、どのあたりですか?
functional javaのビルドはJAVA8_HOMEとJAVA7_HOMEの環境変数を設定したら後はgradle-retrolambda pluginがよしなにやってくれるはずだから、./gradlew check で普通にtest走らせる感じではダメですか
kenji yoshida
@xuwei-k
Mar 13 2015 05:54
あーそうですね、gradleのretrolambdaプラグイン。

JAVA8_HOMEとJAVA7_HOMEの環境変数を設定したら後はgradle-retrolambda pluginがよしなにやってくれるはず

自分もそう思ってやってみたけど、うまくいかなくて諦めた残骸 https://travis-ci.org/xuwei-k/functionaljava/builds

Caused by: java.io.IOException: Cannot run program "/bin/java" と出ていて、なにかが固定なpathで "bin/java" を呼び出してるように見えた?(確信はない) けど、そこで心が折れてそれ以上追っていない
Taisuke Oe
@taisukeoe
Mar 13 2015 06:03
あ、Travisに環境変数設定されてなさそう
https://travis-ci.org/xuwei-k/functionaljava/builds/27020599#L47
/bin/javaも、ここのtryGetOldJdk()が空白文字列を返した結果な気がするので、やはりJDKのpathをとれて無さそう
https://github.com/evant/gradle-retrolambda/blob/master/src/main/groovy/me/tatarka/RetrolambdaPluginJava.groovy#L70
kenji yoshida
@xuwei-k
Mar 13 2015 06:05
なるほど
まぁそんなにすごく困ってるわけでもないので、簡単にわかりそうだったらでいいです
Taisuke Oe
@taisukeoe
Mar 13 2015 06:06
travis ci触ったことないんですが、単純にJava8とJava7入れて、それぞれJAVA8_HOMEとJAVA7_HOMEの環境変数にpathを束縛できないですか?
kenji yoshida
@xuwei-k
Mar 13 2015 06:12
それをやってみてるつもり?(自分が単純なミスしてる可能性は大いにあるけど) というか、すでにJava7と8は入ってるらしいです。これ https://github.com/michaelklishin/jdk_switcher でコマンドで切り替えられるらしい(と書いてあったはず) http://docs.travis-ci.com/user/languages/java/#Switching-JDKs-Within-One-Job
Taisuke Oe
@taisukeoe
Mar 13 2015 06:16
あ、jdk両方入っていてTravis CIのコマンドでJAVA_HOMEを入れ替えてたとしても、gradle-retrolambda用に環境変数を設定しなければダメそうってことです
- jdk_switcher use oraclejdk7
JAVA7_HOME=JAVA_HOME
- jdk_switcher use oraclejdk8
JAVA8_HOME=JAVA_HOME
とか?(そもそもJAVA_HOMEが変わってるのか確かめてないので適当ですが)
https://github.com/michaelklishin/jdk_switcher#commands JAVA_HOMEちゃんと変えてそうな気配