“java.lang.VerifyError” occured when starting elasticsearch 1.7.1

Hi,

The elasticsearch 1.7.1 release was compiled in my local environment (jdk version:1.7.71 , win 64x). The source code was downloaded in github: https://github.com/elastic/elasticsearch/tree/v1.7.1

After build success, I run the elasticsearch releases in target folder. It show me the following information :

E:\03_workspace\05_newEclipseWorkspace\elasticsearch\target\releases\elasticsear
ch-1.7.1\elasticsearch-1.7.1\bin>elasticsearch
Exception in thread "main" java.lang.VerifyError: Inconsistent stackmap frames a
t branch target 41
Exception Details:
  Location:
    org/elasticsearch/common/Strings.spaceify(ILjava/lang/String;Ljava/lang/Stri
ngBuilder;)V @41: iload
  Reason:
    Type top (current frame, locals[7]) is not assignable to 'java/lang/String'
(stack map, locals[7])
  Current Frame:
    bci: @28
    flags: { }
    locals: { integer, 'java/lang/String', 'java/lang/StringBuilder', 'java/lang
/Throwable', 'java/lang/Throwable', 'java/io/BufferedReader', integer }
    stack: { }
  Stackmap Frame:
    bci: @41
    flags: { }
    locals: { integer, 'java/lang/String', 'java/lang/StringBuilder', 'java/lang
/Throwable', 'java/lang/Throwable', 'java/io/BufferedReader', integer, 'java/lan
g/String' }
    stack: { }
  Bytecode:
    0x0000000: 014e 013a 04bb 0041 59bb 0043 592b b700
    0x0000010: 46b7 0049 3a05 a700 2503 3606 a700 0d2c
    0x0000020: 1020 b600 5157 8406 0115 061a a1ff f32c
    0x0000030: 1907 b600 5410 0ab6 0051 5719 05b6 0058
    0x0000040: 593a 07c7 ffd6 1905 c600 3219 05b6 005b
    0x0000050: a700 2a4e 1905 c600 0819 05b6 005b 2dbf
    0x0000060: 3a04 2dc7 0009 1904 4ea7 000f 2d19 04a5
    0x0000070: 0009 2d19 04b6 005f 2dbf b1
  Exception Handler Table:
    bci [22, 70] => handler: 83
    bci [5, 96] => handler: 96
  Stackmap Table:
    full_frame(@25,{Integer,Object[#31],Object[#75],Object[#77],Object[#77],Obje
ct[#65],Object[#31]},{})
    full_frame(@31,{Integer,Object[#31],Object[#75],Object[#77],Object[#77],Obje
ct[#65],Integer,Object[#31]},{})
    same_frame(@41)
    chop_frame(@59,2)
    same_locals_1_stack_item_frame(@83,Object[#77])
    chop_frame(@94,1)
    same_locals_1_stack_item_frame(@96,Object[#77])
    same_frame(@108)
    same_frame(@120)
    chop_frame(@122,2)

        at org.elasticsearch.common.settings.ImmutableSettings$Builder.replacePr
opertyPlaceholders(ImmutableSettings.java:1109)
        at org.elasticsearch.node.internal.InternalSettingsPreparer.prepareSetti
ngs(InternalSettingsPreparer.java:85)
        at org.elasticsearch.bootstrap.Bootstrap.initialSettings(Bootstrap.java:
144)
        at org.elasticsearch.bootstrap.Bootstrap.main(Bootstrap.java:215)
        at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:32)

Is there something wrong?

Try use -XX:-UseSplitVerifier JVM flag.