Jdbi: JDBI3 рд╕рдВрд╕реНрдХрд░рдг 3.19.0 JDK <11 . рдкрд░ рдирд╣реАрдВ рдЪрд▓рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 12 рдЕрдкреНрд░реИрд▓ 2021  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: jdbi/jdbi

рд░рд┐рд▓реАрдЬ рдиреЛрдЯреНрд╕ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рдЬреЗрдбреАрдХреЗ 8 рдкрд░ рдЖрдЧреЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:

java.lang.UnsupportedClassVersionError: com/github/benmanes/caffeine/cache/Caffeine has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 53.0

рдХрдХреНрд╖рд╛ рд╕рдВрд╕реНрдХрд░рдг 55.0 рдЬреЗрдбреАрдХреЗ 11 рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЬреЗрдбреАрдХреЗ 8 рдкрд░ рдЖрдЧреЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдореЗрдВ рд╕рд╛рдордиреЗ рдЖрдпрд╛: https://github.com/talsma-ict/enumerables/pull/242

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЖрдк: рдХреИрдлреАрди рдХрд╛ рдХреЛрдИ рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рд╣реИ рдЬреЛ jdk8 рдФрд░ jdk16 рджреЛрдиреЛрдВ рдкрд░ рдЪрд▓рддрд╛ рд╣реИ

рдмрд╕ fyi, 2.x рдореЗрдВ рд╕рдВрдЧрддрддрд╛ рд╕рдорд╕реНрдпрд╛ рдХреЗрд╡рд▓ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ sun.misc.Unsafe рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрд╣ рдЕрднреА рднреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ JDK16 рдореЗрдВ рдЕрдиреБрдордд рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ jlink рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреИрдлреАрди 3.0 (рдлреЙрд▓рдмреИрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдореЗрдВ рдЕрдм рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА, рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд╛рд╕реНрдЯрд░ (рдЖрдЧрд╛рдореА 3.0.2) рдкрд░ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред JDK16 рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рдХрдбрд╝реЗ рд╣реЛрдиреЗ рд╕реЗ рд╣рдо рдкрд░ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рдкрдбрд╝рд╛, рд▓реЗрдХрд┐рди JDK8 рдиреЗ VarHandles рдХреЗ рд╕рд╛рде рд╢рд┐рдк рдирд╣реАрдВ рдХрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдо Unsafe (рдпрд╛ AtomicReferenceFieldUpdater рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░ рд░рд╣реЗ рдереЗ, рдЬрд┐рд╕рдореЗрдВ рдХрд┐рд╕реА рдлрд╝реАрд▓реНрдб рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдкрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдПрдБ рд╣реИрдВ) .

рд╕рднреА 7 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рд╛рдп @sjoerdtalsma , рдЖрдкрдХреЛ рдереЛрдбрд╝рд╛ рдЦреЗрдж рд╣реИ: рдХреИрдлреАрди рдХрд╛ рдХреЛрдИ рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рд╣реИ рдЬреЛ jdk8 рдФрд░ jdk16 рджреЛрдиреЛрдВ рдкрд░ рдЪрд▓рддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ 16 рдЕрдм GA рд╣реИ, Jdbi рдХреЛ рдХреИрдлреАрди рдХреЗ рд╕рдВрдЧрдд рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд░рд┐рд▓реАрдЬ рдиреЛрдЯреНрд╕ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рд╣реИ:

jdk16 рдХреЗ рд▓рд┐рдП рдХреИрдлреАрди рдбрд┐рдк рдХреЛ 3.0.1 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВ (рдиреЛрдЯ: jdk8 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЗрд╕реЗ 2.x рдкрд░ рд╡рд╛рдкрд╕ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА)

рд▓реЗрдХрд┐рди рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдкреНрд░рдореБрдЦ рдирд╣реАрдВ рд╣реИред

рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдПрдХ рдиреЛрдЯ рднреА рдЬреЛрдбрд╝рд╛: http://jdbi.org/#_java_compatibility

рдХреНрдпрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЗрд╕рдХрд╛ рдмреЗрд╣рддрд░ рд╕рдВрдХреЗрдд рджреЗ рд╕рдХреЗрдВ? рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк 2.x рдкрд░ рд╡рд╛рдкрд╕ рдХреИрдлреАрди рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░ рд▓реЗрдВрдЧреЗ рддреЛ рдпрд╣ рд╕рдм рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдХреЛрдИ рдФрд░ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛ рддреЛ рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдмрддрд╛рдПрдВред

рдореИрдВрдиреЗ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдкреНрд░рдореБрдЦрддрд╛ рд╕реЗ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рд▓реАрдЬрд╝ рдиреЛрдЯреНрд╕ рдореЗрдВ рдХреБрдЫ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рд╣реИрдВред рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдХреБрдЫ рдФрд░ рд╣реИ рдЬреЛ рд╣рдо рдпрд╣рд╛рдВ рдмреЗрд╣рддрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдзрдиреНрдпрд╡рд╛рдж, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рд▓реЛрдЧ рдореБрдЭрд╕реЗ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рд╕реЗ рдкрдврд╝реЗрдВрдЧреЗред
рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЗрд░реЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХреБрдЫ рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╕рд╛рде рд╣реА рдпрд╣ рдЙрдирдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдХреНрд░рдордгреАрдп рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдПрдХ рд╕рдВрдХреНрд░рдордгреАрдп рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдХреИрдлреАрди рдХреЛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдорд╛рдирдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рд░рд╣рдирд╛ рдФрд░ рдЕрднреА рднреА рдПрдХ рдЬреЗрдбреАрдХреЗ 8 рдмрд╛рдЗрдЯрдХреЛрдб рдЖрд░реНрдЯрд┐рдлреИрдХреНрдЯ рд╡рд┐рддрд░рд┐рдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╣рд╛рд▓рд┐рдпрд╛ рдЬреЗрдбреАрдХреЗ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ред рдЗрд╕ рддрд░рд╣ рдореИрдВ рдпрд╣ рдЙрди рдкрд░ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рд╡реЗ рд╕реНрд╡рдпрдВ рдирд┐рд░реНрдгрдп рд▓реЗрдВред

рдЕрддрд┐рд░рд┐рдХреНрдд рдЬреЛрд░ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдЕрдм рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░ рджреВрдВрдЧрд╛ред

рд╣рд╛рдБ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рддрдХ рдкрд╣реБрдБрдЪрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡реЗ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рд╡рд┐рдХрд╛рд╕ рдЕрдиреБрднрд╡ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЬрд╛рд╡рд╛ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ 8 рдкрд░ рдЪрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдард┐рди рдФрд░ рдХрдард┐рди рд╣реЛрддрд╛ рд░рд╣реЗрдЧрд╛;)

рдЕрдкрдиреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рдЖрд░рд╛ module-info.java рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдЬреЛрдбрд╝рддреЗ рд╕рдордп JDK 1.5 рдмрд╛рдЗрдЯрдХреЛрдб рд╕рдВрдЧрддрддрд╛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ
рдореИрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдХрдо рд╕реЗ рдХрдо рдЖрдо рднрд╛рдЬрдХ рддрдХ рд╕реАрдорд┐рдд рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВред

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЖрдк: рдХреИрдлреАрди рдХрд╛ рдХреЛрдИ рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рд╣реИ рдЬреЛ jdk8 рдФрд░ jdk16 рджреЛрдиреЛрдВ рдкрд░ рдЪрд▓рддрд╛ рд╣реИ

рдмрд╕ fyi, 2.x рдореЗрдВ рд╕рдВрдЧрддрддрд╛ рд╕рдорд╕реНрдпрд╛ рдХреЗрд╡рд▓ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ sun.misc.Unsafe рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрд╣ рдЕрднреА рднреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ JDK16 рдореЗрдВ рдЕрдиреБрдордд рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ jlink рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреИрдлреАрди 3.0 (рдлреЙрд▓рдмреИрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдореЗрдВ рдЕрдм рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА, рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд╛рд╕реНрдЯрд░ (рдЖрдЧрд╛рдореА 3.0.2) рдкрд░ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред JDK16 рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рдХрдбрд╝реЗ рд╣реЛрдиреЗ рд╕реЗ рд╣рдо рдкрд░ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рдкрдбрд╝рд╛, рд▓реЗрдХрд┐рди JDK8 рдиреЗ VarHandles рдХреЗ рд╕рд╛рде рд╢рд┐рдк рдирд╣реАрдВ рдХрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдо Unsafe (рдпрд╛ AtomicReferenceFieldUpdater рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░ рд░рд╣реЗ рдереЗ, рдЬрд┐рд╕рдореЗрдВ рдХрд┐рд╕реА рдлрд╝реАрд▓реНрдб рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдкрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдПрдБ рд╣реИрдВ) .

рд╣рд╛рдп @ рдмреЗрди-рдореЗрди, рдпрд╣рд╛рдВ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ jdk16 рдЖрдкрдХреЛ рдЕрднреА рднреА рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ - рдХрдо рд╕реЗ рдХрдо рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдореЗрдВ --illegal-access=permit рдкрд╛рд╕ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдХреНрдпреЛрдВрдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЕрдм рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдЬреЗрдбреАрдмреА рдХреЗ рд╕рд╛рде рдПрдХ рдирдИ рдЬреЗрдбреАрдХреЗ 16 рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП "рдмреЙрдХреНрд╕ рдЕрдиреБрднрд╡ рд╕реЗ рдмрд╛рд╣рд░" рдЙрд╕ рддрд░рд╣ рдХреЗ рдмрджрд╕реВрд░рдд рд╕реНрд╡рд┐рдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ, рдЗрд╕рд▓рд┐рдП 3.x рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВред

рдЕрдм рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдо рдЗрд╕реЗ рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ рд╣реБрдП рджреЗрдЦрдХрд░ рдЦреБрд╢ рд╣реИрдВ :)

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Shujito picture Shujito  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

qualidafial picture qualidafial  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jarlah picture jarlah  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mcarabolante picture mcarabolante  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

bakstad picture bakstad  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ