Skip to content

Commit 1ff802d

Browse files
committed
Add recorded jni-config for windows in sample
- While out of a box *nix don't need spesific native config as is, windows is a different story as it needs jna/jansi stuff and i.e. jna needs jvm native things which doesn't work without correct graal configs. - Relates spring-projects#490
1 parent 291e93c commit 1ff802d

File tree

1 file changed

+286
-0
lines changed
  • spring-shell-samples/src/main/resources/META-INF/native-image

1 file changed

+286
-0
lines changed
Lines changed: 286 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,286 @@
1+
[
2+
{
3+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
4+
"name":"com.sun.jna.Callback"
5+
},
6+
{
7+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
8+
"name":"com.sun.jna.CallbackReference",
9+
"methods":[
10+
{"name":"getCallback","parameterTypes":["java.lang.Class","com.sun.jna.Pointer","boolean"] },
11+
{"name":"getFunctionPointer","parameterTypes":["com.sun.jna.Callback","boolean"] },
12+
{"name":"getNativeString","parameterTypes":["java.lang.Object","boolean"] },
13+
{"name":"initializeThread","parameterTypes":["com.sun.jna.Callback","com.sun.jna.CallbackReference$AttachOptions"] }
14+
]
15+
},
16+
{
17+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
18+
"name":"com.sun.jna.CallbackReference$AttachOptions"
19+
},
20+
{
21+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
22+
"name":"com.sun.jna.FromNativeConverter",
23+
"methods":[{"name":"nativeType","parameterTypes":[] }]
24+
},
25+
{
26+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
27+
"name":"com.sun.jna.IntegerType",
28+
"fields":[{"name":"value"}]
29+
},
30+
{
31+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
32+
"name":"com.sun.jna.JNIEnv"
33+
},
34+
{
35+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
36+
"name":"com.sun.jna.Native",
37+
"methods":[
38+
{"name":"dispose","parameterTypes":[] },
39+
{"name":"fromNative","parameterTypes":["com.sun.jna.FromNativeConverter","java.lang.Object","java.lang.reflect.Method"] },
40+
{"name":"fromNative","parameterTypes":["java.lang.Class","java.lang.Object"] },
41+
{"name":"fromNative","parameterTypes":["java.lang.reflect.Method","java.lang.Object"] },
42+
{"name":"nativeType","parameterTypes":["java.lang.Class"] },
43+
{"name":"toNative","parameterTypes":["com.sun.jna.ToNativeConverter","java.lang.Object"] }
44+
]
45+
},
46+
{
47+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
48+
"name":"com.sun.jna.Native$ffi_callback",
49+
"methods":[{"name":"invoke","parameterTypes":["long","long","long"] }]
50+
},
51+
{
52+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
53+
"name":"com.sun.jna.NativeMapped",
54+
"methods":[{"name":"toNative","parameterTypes":[] }]
55+
},
56+
{
57+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
58+
"name":"com.sun.jna.Pointer",
59+
"fields":[{"name":"peer"}],
60+
"methods":[{"name":"<init>","parameterTypes":["long"] }]
61+
},
62+
{
63+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
64+
"name":"com.sun.jna.PointerType",
65+
"fields":[{"name":"pointer"}]
66+
},
67+
{
68+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
69+
"name":"com.sun.jna.Structure",
70+
"fields":[
71+
{"name":"memory"},
72+
{"name":"typeInfo"}
73+
],
74+
"methods":[
75+
{"name":"autoRead","parameterTypes":[] },
76+
{"name":"autoWrite","parameterTypes":[] },
77+
{"name":"getTypeInfo","parameterTypes":[] },
78+
{"name":"newInstance","parameterTypes":["java.lang.Class","long"] }
79+
]
80+
},
81+
{
82+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
83+
"name":"com.sun.jna.Structure$ByValue"
84+
},
85+
{
86+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
87+
"name":"com.sun.jna.Structure$FFIType$FFITypes",
88+
"fields":[
89+
{"name":"ffi_type_double"},
90+
{"name":"ffi_type_float"},
91+
{"name":"ffi_type_longdouble"},
92+
{"name":"ffi_type_pointer"},
93+
{"name":"ffi_type_sint16"},
94+
{"name":"ffi_type_sint32"},
95+
{"name":"ffi_type_sint64"},
96+
{"name":"ffi_type_sint8"},
97+
{"name":"ffi_type_uint16"},
98+
{"name":"ffi_type_uint32"},
99+
{"name":"ffi_type_uint64"},
100+
{"name":"ffi_type_uint8"},
101+
{"name":"ffi_type_void"}
102+
]
103+
},
104+
{
105+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
106+
"name":"com.sun.jna.WString",
107+
"methods":[{"name":"<init>","parameterTypes":["java.lang.String"] }]
108+
},
109+
{
110+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
111+
"name":"java.lang.Boolean",
112+
"fields":[
113+
{"name":"TYPE"},
114+
{"name":"value"}
115+
],
116+
"methods":[{"name":"<init>","parameterTypes":["boolean"] }]
117+
},
118+
{
119+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
120+
"name":"java.lang.Byte",
121+
"fields":[
122+
{"name":"TYPE"},
123+
{"name":"value"}
124+
],
125+
"methods":[{"name":"<init>","parameterTypes":["byte"] }]
126+
},
127+
{
128+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
129+
"name":"java.lang.Character",
130+
"fields":[
131+
{"name":"TYPE"},
132+
{"name":"value"}
133+
],
134+
"methods":[{"name":"<init>","parameterTypes":["char"] }]
135+
},
136+
{
137+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
138+
"name":"java.lang.Class",
139+
"methods":[{"name":"getComponentType","parameterTypes":[] }]
140+
},
141+
{
142+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
143+
"name":"java.lang.Double",
144+
"fields":[
145+
{"name":"TYPE"},
146+
{"name":"value"}
147+
],
148+
"methods":[{"name":"<init>","parameterTypes":["double"] }]
149+
},
150+
{
151+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
152+
"name":"java.lang.Float",
153+
"fields":[
154+
{"name":"TYPE"},
155+
{"name":"value"}
156+
],
157+
"methods":[{"name":"<init>","parameterTypes":["float"] }]
158+
},
159+
{
160+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
161+
"name":"java.lang.Integer",
162+
"fields":[
163+
{"name":"TYPE"},
164+
{"name":"value"}
165+
],
166+
"methods":[{"name":"<init>","parameterTypes":["int"] }]
167+
},
168+
{
169+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
170+
"name":"java.lang.Long",
171+
"fields":[
172+
{"name":"TYPE"},
173+
{"name":"value"}
174+
],
175+
"methods":[{"name":"<init>","parameterTypes":["long"] }]
176+
},
177+
{
178+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
179+
"name":"java.lang.Object",
180+
"methods":[{"name":"toString","parameterTypes":[] }]
181+
},
182+
{
183+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
184+
"name":"java.lang.Short",
185+
"fields":[
186+
{"name":"TYPE"},
187+
{"name":"value"}
188+
],
189+
"methods":[{"name":"<init>","parameterTypes":["short"] }]
190+
},
191+
{
192+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
193+
"name":"java.lang.String",
194+
"methods":[
195+
{"name":"<init>","parameterTypes":["byte[]"] },
196+
{"name":"<init>","parameterTypes":["byte[]","java.lang.String"] },
197+
{"name":"getBytes","parameterTypes":[] },
198+
{"name":"getBytes","parameterTypes":["java.lang.String"] },
199+
{"name":"toCharArray","parameterTypes":[] }
200+
]
201+
},
202+
{
203+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
204+
"name":"java.lang.System",
205+
"methods":[{"name":"getProperty","parameterTypes":["java.lang.String"] }]
206+
},
207+
{
208+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.$Proxy43"},
209+
"name":"java.lang.UnsatisfiedLinkError",
210+
"methods":[{"name":"<init>","parameterTypes":["java.lang.String"] }]
211+
},
212+
{
213+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
214+
"name":"java.lang.Void",
215+
"fields":[{"name":"TYPE"}]
216+
},
217+
{
218+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
219+
"name":"java.lang.reflect.Method",
220+
"methods":[
221+
{"name":"getParameterTypes","parameterTypes":[] },
222+
{"name":"getReturnType","parameterTypes":[] }
223+
]
224+
},
225+
{
226+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
227+
"name":"java.nio.Buffer",
228+
"methods":[{"name":"position","parameterTypes":[] }]
229+
},
230+
{
231+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
232+
"name":"java.nio.ByteBuffer",
233+
"methods":[
234+
{"name":"array","parameterTypes":[] },
235+
{"name":"arrayOffset","parameterTypes":[] }
236+
]
237+
},
238+
{
239+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
240+
"name":"java.nio.CharBuffer",
241+
"methods":[
242+
{"name":"array","parameterTypes":[] },
243+
{"name":"arrayOffset","parameterTypes":[] }
244+
]
245+
},
246+
{
247+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
248+
"name":"java.nio.DoubleBuffer",
249+
"methods":[
250+
{"name":"array","parameterTypes":[] },
251+
{"name":"arrayOffset","parameterTypes":[] }
252+
]
253+
},
254+
{
255+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
256+
"name":"java.nio.FloatBuffer",
257+
"methods":[
258+
{"name":"array","parameterTypes":[] },
259+
{"name":"arrayOffset","parameterTypes":[] }
260+
]
261+
},
262+
{
263+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
264+
"name":"java.nio.IntBuffer",
265+
"methods":[
266+
{"name":"array","parameterTypes":[] },
267+
{"name":"arrayOffset","parameterTypes":[] }
268+
]
269+
},
270+
{
271+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
272+
"name":"java.nio.LongBuffer",
273+
"methods":[
274+
{"name":"array","parameterTypes":[] },
275+
{"name":"arrayOffset","parameterTypes":[] }
276+
]
277+
},
278+
{
279+
"condition":{"typeReachable":"org.jline.terminal.impl.jna.win.Kernel32"},
280+
"name":"java.nio.ShortBuffer",
281+
"methods":[
282+
{"name":"array","parameterTypes":[] },
283+
{"name":"arrayOffset","parameterTypes":[] }
284+
]
285+
}
286+
]

0 commit comments

Comments
 (0)