Skip to content

Commit ed6bdd9

Browse files
committed
up
1 parent 5ee7205 commit ed6bdd9

File tree

3 files changed

+40
-36
lines changed

3 files changed

+40
-36
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package com.example.demo;
2+
3+
import org.springframework.boot.ApplicationRunner;
4+
import org.springframework.boot.autoconfigure.SpringBootApplication;
5+
import org.springframework.context.annotation.Bean;
6+
import org.springframework.context.annotation.Configuration;
7+
8+
import java.lang.foreign.Linker;
9+
import java.lang.foreign.SymbolLookup;
10+
import java.util.Map;
11+
12+
@SpringBootApplication
13+
public class ApplicationConfiguration {
14+
15+
@Bean
16+
SymbolLookup symbolLookup() {
17+
var nativeLinker = Linker.nativeLinker();
18+
var stdlibLookup = nativeLinker.defaultLookup();
19+
var loaderLookup = SymbolLookup.loaderLookup();
20+
return name -> loaderLookup.find(name).or(() -> stdlibLookup.find(name));
21+
}
22+
23+
@Bean
24+
ApplicationRunner demo(Map<String, LanguageDemonstrationRunner> demos) {
25+
return _ -> demos.forEach((_, demo) -> {
26+
try {
27+
demo.run();
28+
} //
29+
catch (Throwable e) {
30+
throw new RuntimeException(e);
31+
}
32+
});
33+
}
34+
35+
}
Lines changed: 3 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,7 @@
1-
package com.example.demo;
21

3-
import org.springframework.boot.ApplicationRunner;
2+
import com.example.demo.ApplicationConfiguration;
43
import org.springframework.boot.SpringApplication;
5-
import org.springframework.boot.autoconfigure.SpringBootApplication;
6-
import org.springframework.context.annotation.Bean;
7-
8-
import java.lang.foreign.Linker;
9-
import java.lang.foreign.SymbolLookup;
10-
import java.util.Map;
11-
12-
@SpringBootApplication
13-
public class DemoApplication {
14-
15-
public static void main(String[] args) {
16-
SpringApplication.run(DemoApplication.class, args);
17-
}
18-
19-
@Bean
20-
SymbolLookup symbolLookup() {
21-
var nativeLinker = Linker.nativeLinker();
22-
var stdlibLookup = nativeLinker.defaultLookup();
23-
var loaderLookup = SymbolLookup.loaderLookup();
24-
return name -> loaderLookup.find(name).or(() -> stdlibLookup.find(name));
25-
}
26-
27-
@Bean
28-
ApplicationRunner demo(Map<String, LanguageDemonstrationRunner> demos) {
29-
return _ -> demos.forEach((_, demo) -> {
30-
try {
31-
demo.run();
32-
} //
33-
catch (Throwable e) {
34-
throw new RuntimeException(e);
35-
}
36-
});
37-
}
384

5+
void main(String[] args) {
6+
SpringApplication.run(ApplicationConfiguration.class, args);
397
}
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
spring.application.name=demo
22
spring.threads.virtual.enabled=true
3-
spring.sql.init.mode=always
3+
spring.sql.init.mode=always
4+
spring.main.allow-bean-definition-overriding=true

0 commit comments

Comments
 (0)