herokuのpushでJavaのCompilerがversion 1.5になってラムダ式を使うとコンパイルエラーが発生するときの対処方法

# 事象
herokuのjavaアプリケーションを`git push heroku master`でデプロイする際に、mavenのjavaのコンパイラが`-source 1.5`となり、ラムダ式を受け付けてくれなくなることがあったので、その対処方法をメモ

```
remote:        [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ helloworld ---
remote:        [INFO] 
remote:        [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ helloworld ---
remote:        [INFO] Using 'UTF-8' encoding to copy filtered resources.
remote:        [INFO] Copying 1 resource
remote:        [INFO] 
remote:        [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ helloworld ---
remote:        [INFO] Changes detected - recompiling the module!
remote:        [INFO] Compiling 20 source files to /tmp/build_87cf46c0b2782adde23c08b558684ff6/target/classes
remote:        [INFO] -------------------------------------------------------------
remote:        [ERROR] COMPILATION ERROR : 
remote:        [INFO] -------------------------------------------------------------
remote:        [ERROR] /tmp/build_87cf46c0b2782adde23c08b558684ff6/src/main/java/xxxxxxxx/XxxxxYyyyyZzzzz.java:[60,42] lambda expressions are not supported in -source 1.5 ← ここでラムダ式を使ったソースがエラー
remote:          (use -source 8 or higher to enable lambda expressions)
remote:        [INFO] 1 error
remote:        [INFO] -------------------------------------------------------------
remote:        [INFO] ------------------------------------------------------------------------
remote:        [INFO] BUILD FAILURE
remote:        [INFO] ------------------------------------------------------------------------
remote:        [INFO] Total time: 12.493 s
remote:        [INFO] Finished at: 2015-05-06T11:54:00+00:00
remote:        [INFO] Final Memory: 16M/418M
remote:        [INFO] ------------------------------------------------------------------------
remote:        [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project helloworld: Compilation failure
remote:        [ERROR] /tmp/build_87cf46c0b2782adde23c08b558684ff6/src/main/java/xxxxxxxx/XxxxxYyyyyZzzzz.java:[60,42] lambda expressions are not supported in -source 1.5
remote:        [ERROR] (use -source 8 or higher to enable lambda expressions)
remote:        [ERROR] -> [Help 1]
remote:        [ERROR] 
remote:        [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
remote:        [ERROR] Re-run Maven using the -X switch to enable full debug logging.
remote:        [ERROR] 
remote:        [ERROR] For more information about the errors and possible solutions, please read the following articles:
remote:        [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
remote: 
remote:  !     ERROR: Failed to build app with Maven
remote:        We're sorry this build is failing! If you can't find the issue in application code,
remote:        please submit a ticket so we can help: https://help.heroku.com/
remote: 
remote: 
remote:  !     Push rejected, failed to compile Java app
remote: 
remote: Verifying deploy....
remote: 
remote: !	Push rejected to dry-bayou-9999.
remote: 
To https://git.heroku.com/dry-bayou-9999.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/dry-bayou-9999.git'
```

# 原因
コンパイル時にjavaのversionで1.5が指定されて、ラムダ式が認識されないようだ。
(1.5というのは古すぎるような)

# 対応方法
mavenのpom.xmlに以下を追加

```
<properties>
  <maven.compiler.source>1.8</maven.compiler.source>
  <maven.compiler.target>1.8</maven.compiler.target>
</properties>
```

または、

```
       <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>

```

# 参考

[How to change Java version for Maven in IntelliJ?](http://stackoverflow.com/questions/25888023/how-to-change-java-version-for-maven-in-intellij)
[MavenでJava8のプロジェクトを作る](http://qiita.com/mkamotsu/items/98c6d721a87a74f2b36f)

# 感想
IntelliJだとこの辺りを微妙に吸収してくれていたようなので、あんまり気づかなかった。