File tree 5 files changed +109
-12
lines changed
5 files changed +109
-12
lines changed Original file line number Diff line number Diff line change 85
85
- name : Compile to native binary
86
86
run : |
87
87
mv aidbox-sdk.jar source.jar
88
- native-image -jar ./source.jar --no-fallback --no-server aidbox-sdk-${{ matrix.os }}
88
+ native-image -jar ./source.jar \
89
+ -march=native \
90
+ --no-fallback \
91
+ --features=clj_easy.graal_build_time.InitClojureClasses \
92
+ -H:ReflectionConfigurationFiles=reflect-config.json \
93
+ aidbox-sdk-${{ matrix.os }}
89
94
90
95
- name : Upload amd64 binary artifact
91
96
uses : actions/upload-artifact@v4
Original file line number Diff line number Diff line change 8
8
(b/delete {:path " target" }))
9
9
10
10
(defn uberjar [{:keys [jar-name]
11
- :or {jar-name " aidbox-sdk" }}]
12
-
11
+ :or {jar-name " aidbox-sdk" }}]
13
12
(clean nil )
14
13
15
- (b/copy-dir {:src-dirs [" src" " resources" ]
14
+ (b/copy-dir {:src-dirs [" src" " resources" ]
16
15
:target-dir class-dir})
17
16
18
- (b/compile-clj {:basis basis
17
+ (b/compile-clj {:basis basis
19
18
:ns-compile '[aidbox-sdk.core]
20
- :class-dir class-dir})
19
+ :class-dir class-dir})
20
+
21
+ (let [jar-path (str " target/" jar-name " .jar" )]
22
+ (b/uber {:class-dir class-dir
23
+ :uber-file jar-path
24
+ :basis basis
25
+ :main 'aidbox-sdk.core})
21
26
22
- (b/uber {:class-dir class-dir
23
- :uber-file (str " target/" jar-name " .jar" )
24
- :basis basis
25
- :main 'aidbox-sdk.core}))
27
+ (println " Building complete. Uberjar is available at:" jar-path)))
Original file line number Diff line number Diff line change 1
1
{:paths [" src" ]
2
- :deps {com.github.clj-easy/graal-build-time {:mvn/version " 0.1.4" }
2
+ :deps {org.clojure/data.json {:mvn/version " 2.5.0" }
3
+
4
+ com.github.clj-easy/graal-build-time {:mvn/version " 1.0.5" }
3
5
org.clojure/clojure {:mvn/version " 1.11.3" }
4
- org.clojure/data.json {:mvn/version " 2.5.0" }
5
6
org.clojure/tools.cli {:mvn/version " 1.1.230" }}
6
7
7
8
:aliases
Original file line number Diff line number Diff line change
1
+ [
2
+ {
3
+ "name" : " clojure.lang.APersistentSet" ,
4
+ "methods" : [
5
+ {
6
+ "name" : " contains" ,
7
+ "parameterTypes" : [
8
+ " java.lang.Object"
9
+ ]
10
+ }
11
+ ]
12
+ },
13
+ {
14
+ "name" : " clojure.lang.APersistentVector" ,
15
+ "methods" : [
16
+ {
17
+ "name" : " contains" ,
18
+ "parameterTypes" : [
19
+ " java.lang.Object"
20
+ ]
21
+ }
22
+ ]
23
+ },
24
+ {
25
+ "name" : " clojure.lang.PersistentHashSet" ,
26
+ "queryAllPublicMethods" : true
27
+ },
28
+ {
29
+ "name" : " clojure.lang.PersistentVector" ,
30
+ "queryAllPublicMethods" : true
31
+ },
32
+ {
33
+ "name" : " java.io.BufferedReader" ,
34
+ "queryAllPublicMethods" : true ,
35
+ "methods" : [
36
+ {
37
+ "name" : " close" ,
38
+ "parameterTypes" : []
39
+ }
40
+ ]
41
+ },
42
+ {
43
+ "name" : " java.io.File" ,
44
+ "queryAllPublicMethods" : true ,
45
+ "methods" : [
46
+ {
47
+ "name" : " getName" ,
48
+ "parameterTypes" : []
49
+ },
50
+ {
51
+ "name" : " isDirectory" ,
52
+ "parameterTypes" : []
53
+ },
54
+ {
55
+ "name" : " mkdir" ,
56
+ "parameterTypes" : []
57
+ }
58
+ ]
59
+ },
60
+ {
61
+ "name" : " java.lang.reflect.Method" ,
62
+ "methods" : [
63
+ {
64
+ "name" : " canAccess" ,
65
+ "parameterTypes" : [
66
+ " java.lang.Object"
67
+ ]
68
+ }
69
+ ]
70
+ },
71
+ {
72
+ "name" : " java.util.concurrent.atomic.AtomicBoolean" ,
73
+ "fields" : [
74
+ {
75
+ "name" : " value"
76
+ }
77
+ ]
78
+ },
79
+ {
80
+ "name" : " java.util.concurrent.atomic.AtomicReference" ,
81
+ "fields" : [
82
+ {
83
+ "name" : " value"
84
+ }
85
+ ]
86
+ }
87
+ ]
Original file line number Diff line number Diff line change 4
4
[clojure.java.io :as io]
5
5
[aidbox-sdk.generator :as generator]))
6
6
7
+ (set! *warn-on-reflection* true )
8
+
7
9
(defn url
8
10
" Safe version of as-url function"
9
11
[s]
You can’t perform that action at this time.
0 commit comments