私は、Eclipse上のJUnit 4とRobolectricでテストを実行しようとしているが、私はこのエラーが発生したすべての時間:内部エラー(javaClasses.cpp:129)
Invalid layout of java.lang.String at value
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (javaClasses.cpp:129), pid=3546, tid=140317899335424
# fatal error: Invalid layout of preloaded class
#
# JRE version: 7.0_07-b10
# Java VM: Java HotSpot(TM) 64-Bit Server VM (23.3-b01 mixed mode linux-amd64 compressed oops)
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
は私のテストは非常に簡単です。
@RunWith(RobolectricTestRunner.class)
public class FormatTest {
@Test
public void getFormatElapsedTimeOnSecondsTest(){
assertEquals("3seg","3seg");
}
}
Javaが私のシステムにインストールされている:
java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)
私が起こるかを理解していないこれは、すべての作業が唯一のチェックのためです。
Javaがネイティブコードで例外を検出したときにクラッシュすることがあります。この[スレッド](http://mail.openjdk.java.net/pipermail/mlvm-dev/2010-May/001728.html)によれば、JavaのインストールとJUnitライブラリを更新することができます。 – aroth
しかし、javaは1.7.0_07-b10がOracleの最新バージョンであるため、すでに更新されています。そしてJUnitも更新されました。それは4.10バージョンのMavenの依存です。 –
代替ソリューションについてはhttp://stackoverflow.com/questions/13030111/fatal-error-invalid-layout-of-java-lang-string-at-valueも参照してください。 – kennytm