[#653] Upgrade to GraalVM 20.3.0

This commit is contained in:
Michiel Borkent 2020-12-05 20:56:12 +01:00 committed by GitHub
parent db5466d3c4
commit 9a80a47cfa
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 108 additions and 64 deletions

View file

@ -70,7 +70,7 @@ jobs:
working_directory: ~/repo working_directory: ~/repo
environment: environment:
LEIN_ROOT: "true" LEIN_ROOT: "true"
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-20.2.0 GRAALVM_HOME: /home/circleci/graalvm-ce-java11-20.3.0
BABASHKA_PLATFORM: linux # used in release script BABASHKA_PLATFORM: linux # used in release script
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
BABASHKA_XMX: "-J-Xmx6500m" BABASHKA_XMX: "-J-Xmx6500m"
@ -104,9 +104,9 @@ jobs:
name: Download GraalVM name: Download GraalVM
command: | command: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-20.2.0 ]; then if ! [ -d graalvm-ce-java11-20.3.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
fi fi
- run: - run:
name: Build binary name: Build binary
@ -126,7 +126,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-java11-20.2.0 - ~/graalvm-ce-java11-20.3.0
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }} key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
- store_artifacts: - store_artifacts:
path: /tmp/release path: /tmp/release
@ -141,7 +141,7 @@ jobs:
working_directory: ~/repo working_directory: ~/repo
environment: environment:
LEIN_ROOT: "true" LEIN_ROOT: "true"
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-20.2.0 GRAALVM_HOME: /home/circleci/graalvm-ce-java11-20.3.0
BABASHKA_PLATFORM: linux-static # used in release script BABASHKA_PLATFORM: linux-static # used in release script
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
BABASHKA_STATIC: true BABASHKA_STATIC: true
@ -176,9 +176,9 @@ jobs:
name: Download GraalVM name: Download GraalVM
command: | command: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-20.2.0 ]; then if ! [ -d graalvm-ce-java11-20.3.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
fi fi
- run: - run:
name: Build binary name: Build binary
@ -198,7 +198,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-java11-20.2.0 - ~/graalvm-ce-java11-20.3.0
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }} key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
- store_artifacts: - store_artifacts:
path: /tmp/release path: /tmp/release
@ -212,7 +212,7 @@ jobs:
xcode: "12.0.0" xcode: "12.0.0"
environment: environment:
MACOSX_DEPLOYMENT_TARGET: 10.13 # 10.12 is EOL MACOSX_DEPLOYMENT_TARGET: 10.13 # 10.12 is EOL
GRAALVM_HOME: /Users/distiller/graalvm-ce-java11-20.2.0/Contents/Home GRAALVM_HOME: /Users/distiller/graalvm-ce-java11-20.3.0/Contents/Home
BABASHKA_PLATFORM: macos # used in release script BABASHKA_PLATFORM: macos # used in release script
BABASHKA_TEST_ENV: native BABASHKA_TEST_ENV: native
BABASHKA_XMX: "-J-Xmx6500m" BABASHKA_XMX: "-J-Xmx6500m"
@ -240,9 +240,9 @@ jobs:
command: | command: |
cd ~ cd ~
ls -la ls -la
if ! [ -d graalvm-ce-java11-20.2.0 ]; then if ! [ -d graalvm-ce-java11-20.3.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-darwin-amd64-20.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-darwin-amd64-20.3.0.tar.gz
tar xzf graalvm-ce-java11-darwin-amd64-20.2.0.tar.gz tar xzf graalvm-ce-java11-darwin-amd64-20.3.0.tar.gz
fi fi
- run: - run:
name: Build binary name: Build binary
@ -264,7 +264,7 @@ jobs:
- save_cache: - save_cache:
paths: paths:
- ~/.m2 - ~/.m2
- ~/graalvm-ce-java11-20.2.0 - ~/graalvm-ce-java11-20.3.0
key: mac-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }} key: mac-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
- store_artifacts: - store_artifacts:
path: /tmp/release path: /tmp/release

View file

@ -44,17 +44,17 @@ jobs:
uses: actions/cache@v1 uses: actions/cache@v1
id: cache-graalvm id: cache-graalvm
with: with:
path: ~/graalvm-ce-java11-20.2.0 path: ~/graalvm-ce-java11-20.3.0
key: ${{ runner.os }}-graalvm-20.2.0 key: ${{ runner.os }}-graalvm-20.3.0
restore-keys: | restore-keys: |
${{ runner.os }}-graalvm-20.2.0 ${{ runner.os }}-graalvm-20.3.0
- name: Download GraalVM - name: Download GraalVM
run: | run: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-20.2.0 ]; then if ! [ -d graalvm-ce-java11-20.3.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
fi fi
- name: Fetch deps - name: Fetch deps
@ -64,18 +64,18 @@ jobs:
- name: Run tests - name: Run tests
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
script/test script/test
- name: Test libraries - name: Test libraries
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
sudo script/install-clojure sudo script/install-clojure
script/run_lib_tests script/run_lib_tests
- name: Build uberjar - name: Build uberjar
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
script/uberjar script/uberjar
- name: Babashka version - name: Babashka version
@ -132,17 +132,17 @@ jobs:
uses: actions/cache@v1 uses: actions/cache@v1
id: cache-graalvm id: cache-graalvm
with: with:
path: ~/graalvm-ce-java11-20.2.0 path: ~/graalvm-ce-java11-20.3.0
key: ${{ runner.os }}-graalvm-20.2.0 key: ${{ runner.os }}-graalvm-20.3.0
restore-keys: | restore-keys: |
${{ runner.os }}-graalvm-20.2.0 ${{ runner.os }}-graalvm-20.3.0
- name: Download GraalVM - name: Download GraalVM
run: | run: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-20.2.0 ]; then if ! [ -d graalvm-ce-java11-20.3.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
fi fi
- name: Babashka version - name: Babashka version
@ -155,13 +155,13 @@ jobs:
run: | run: |
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
export BABASHKA_XMX="-J-Xmx6g" export BABASHKA_XMX="-J-Xmx6g"
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
script/compile script/compile
- name: Test binary - name: Test binary
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
BABASHKA_TEST_ENV=native script/test BABASHKA_TEST_ENV=native script/test
- name: Install clojure - name: Install clojure
@ -170,7 +170,7 @@ jobs:
- name: Test libraries - name: Test libraries
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
BABASHKA_TEST_ENV=native script/run_lib_tests BABASHKA_TEST_ENV=native script/run_lib_tests
- uses: actions/upload-artifact@v1 - uses: actions/upload-artifact@v1
@ -212,17 +212,17 @@ jobs:
uses: actions/cache@v1 uses: actions/cache@v1
id: cache-graalvm id: cache-graalvm
with: with:
path: ~/graalvm-ce-java11-20.2.0 path: ~/graalvm-ce-java11-20.3.0
key: ${{ runner.os }}-graalvm-20.2.0 key: ${{ runner.os }}-graalvm-20.3.0
restore-keys: | restore-keys: |
${{ runner.os }}-graalvm-20.2.0 ${{ runner.os }}-graalvm-20.3.0
- name: Download GraalVM - name: Download GraalVM
run: | run: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-20.2.0 ]; then if ! [ -d graalvm-ce-java11-20.3.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
fi fi
- name: Babashka version - name: Babashka version
@ -235,7 +235,7 @@ jobs:
run: | run: |
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
export BABASHKA_XMX="-J-Xmx6g" export BABASHKA_XMX="-J-Xmx6g"
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
export BABASHKA_STATIC=true export BABASHKA_STATIC=true
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
script/compile script/compile
@ -243,7 +243,7 @@ jobs:
- name: Test binary - name: Test binary
run: | run: |
./bb '(+ 1 2 3)' ./bb '(+ 1 2 3)'
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
BABASHKA_TEST_ENV=native script/test BABASHKA_TEST_ENV=native script/test
- name: Install clojure - name: Install clojure
@ -252,7 +252,7 @@ jobs:
- name: Test libraries - name: Test libraries
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
BABASHKA_TEST_ENV=native script/run_lib_tests BABASHKA_TEST_ENV=native script/run_lib_tests
- uses: actions/upload-artifact@v1 - uses: actions/upload-artifact@v1
@ -285,17 +285,17 @@ jobs:
uses: actions/cache@v1 uses: actions/cache@v1
id: cache-graalvm id: cache-graalvm
with: with:
path: ~/graalvm-ce-java11-20.2.0 path: ~/graalvm-ce-java11-20.3.0
key: ${{ runner.os }}-graalvm-20.2.0 key: ${{ runner.os }}-graalvm-20.3.0
restore-keys: | restore-keys: |
${{ runner.os }}-graalvm-20.2.0 ${{ runner.os }}-graalvm-20.3.0
- name: Download GraalVM - name: Download GraalVM
run: | run: |
cd ~ cd ~
if ! [ -d graalvm-ce-java11-20.2.0 ]; then if ! [ -d graalvm-ce-java11-20.3.0 ]; then
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-darwin-amd64-20.2.0.tar.gz curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-darwin-amd64-20.3.0.tar.gz
tar xzf graalvm-ce-java11-darwin-amd64-20.2.0.tar.gz tar xzf graalvm-ce-java11-darwin-amd64-20.3.0.tar.gz
fi fi
- name: Babashka version - name: Babashka version
@ -308,19 +308,19 @@ jobs:
run: | run: |
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
export BABASHKA_XMX="-J-Xmx6g" export BABASHKA_XMX="-J-Xmx6g"
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0/Contents/Home" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0/Contents/Home"
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
script/compile script/compile
- name: Test binary - name: Test binary
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0/Contents/Home" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0/Contents/Home"
sudo script/install-leiningen sudo script/install-leiningen
BABASHKA_TEST_ENV=native script/test BABASHKA_TEST_ENV=native script/test
- name: Test libraries - name: Test libraries
run: | run: |
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0/Contents/Home" export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0/Contents/Home"
sudo script/install-clojure sudo script/install-clojure
BABASHKA_TEST_ENV=native script/run_lib_tests BABASHKA_TEST_ENV=native script/run_lib_tests

View file

@ -3,13 +3,13 @@ FROM clojure:lein-2.9.1 AS BASE
RUN apt update RUN apt update
RUN apt install --no-install-recommends -yy curl unzip build-essential zlib1g-dev RUN apt install --no-install-recommends -yy curl unzip build-essential zlib1g-dev
WORKDIR "/opt" WORKDIR "/opt"
RUN curl -sLO https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz RUN curl -sLO https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
RUN tar -xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz RUN tar -xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
ARG BABASHKA_XMX="-J-Xmx3g" ARG BABASHKA_XMX="-J-Xmx3g"
ENV GRAALVM_HOME="/opt/graalvm-ce-java11-20.2.0" ENV GRAALVM_HOME="/opt/graalvm-ce-java11-20.3.0"
ENV JAVA_HOME="/opt/graalvm-ce-java11-20.2.0/bin" ENV JAVA_HOME="/opt/graalvm-ce-java11-20.3.0/bin"
ENV PATH="$JAVA_HOME:$PATH" ENV PATH="$JAVA_HOME:$PATH"
ENV BABASHKA_XMX=$BABASHKA_XMX ENV BABASHKA_XMX=$BABASHKA_XMX

View file

@ -7,7 +7,7 @@ image: Visual Studio 2017
clone_folder: C:\projects\babashka clone_folder: C:\projects\babashka
environment: environment:
GRAALVM_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-20.2.0 GRAALVM_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-20.3.0
BABASHKA_XMX: "-J-Xmx5g" BABASHKA_XMX: "-J-Xmx5g"
cache: cache:
@ -44,7 +44,7 @@ build_script:
- cmd: >- - cmd: >-
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"
powershell -Command "if (Test-Path('graalvm')) { return } else { (New-Object Net.WebClient).DownloadFile('https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-windows-amd64-20.2.0.zip', 'graalvm.zip') }" powershell -Command "if (Test-Path('graalvm')) { return } else { (New-Object Net.WebClient).DownloadFile('https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-windows-amd64-20.3.0.zip', 'graalvm.zip') }"
powershell -Command "if (Test-Path('graalvm')) { return } else { Expand-Archive graalvm.zip graalvm }" powershell -Command "if (Test-Path('graalvm')) { return } else { Expand-Archive graalvm.zip graalvm }"

View file

@ -3,7 +3,7 @@
## Prerequisites ## Prerequisites
- Install [lein](https://leiningen.org/) for producing uberjars - Install [lein](https://leiningen.org/) for producing uberjars
- Download [GraalVM](https://www.graalvm.org/downloads/). Currently we use *java11-20.2.0*. - Download [GraalVM](https://www.graalvm.org/downloads/). Currently we use *java11-20.3.0*.
- For Windows, installing Visual Studio 2019 with the "Desktop development - For Windows, installing Visual Studio 2019 with the "Desktop development
with C++" workload is recommended. with C++" workload is recommended.
- Set `$GRAALVM_HOME` to the GraalVM distribution directory. On macOS this can look like: - Set `$GRAALVM_HOME` to the GraalVM distribution directory. On macOS this can look like:

View file

@ -1,6 +1,6 @@
# Developing Babashka # Developing Babashka
You need [lein](https://leiningen.org/) for running JVM tests and/or producing uberjars. For building binaries you need GraalVM. Currently we use java11-20.2.0. You need [lein](https://leiningen.org/) for running JVM tests and/or producing uberjars. For building binaries you need GraalVM. Currently we use java11-20.3.0.
## Clone repository ## Clone repository

View file

@ -66,7 +66,7 @@
"-Dclojure.spec.skip-macros=true"] "-Dclojure.spec.skip-macros=true"]
:main babashka.main :main babashka.main
:aot :all} :aot :all}
:native-image {:dependencies [[borkdude/clj-reflector-graal-java11-fix "0.0.1-graalvm-20.2.0"]]} :native-image {:dependencies [[borkdude/clj-reflector-graal-java11-fix "0.0.1-graalvm-20.3.0"]]}
:reflection {:main babashka.impl.classes/generate-reflection-file}} :reflection {:main babashka.impl.classes/generate-reflection-file}}
:aliases {"bb" ["with-profile" "test" "run" "-m" "babashka.main"]} :aliases {"bb" ["with-profile" "test" "run" "-m" "babashka.main"]}
:deploy-repositories [["clojars" {:url "https://clojars.org/repo" :deploy-repositories [["clojars" {:url "https://clojars.org/repo"

View file

@ -0,0 +1,26 @@
import org.graalvm.nativeimage.Platform;
import org.graalvm.nativeimage.Platforms;
import com.oracle.svm.core.annotate.TargetClass;
import com.oracle.svm.core.annotate.Delete;
public final class CutOffSunAwtWwwContentAudioAiff {
}
// @Platforms(Platform.DARWIN.class)
// @TargetClass(className = "sun.net.spi.DefaultProxySelector")
// @Delete
// final class Target_sun_net_spi_DefaultProxySelector {
// }
// @Platforms(Platform.DARWIN.class)
// This cuts of access to the javax.sound package via java.net.HttpUrlConnection:
// sun.awt.www.content.audio.aiff.getContent ->
// java.net.ContentHandler.getContent ->
// java.net.URLConnection.getContent()
@Platforms(Platform.DARWIN.class)
@TargetClass(className = "sun.awt.www.content.audio.aiff")
@Delete
final class Target_sun_awt_www_content_audio_aiff {
}

View file

@ -51,9 +51,9 @@
;; OR ;; OR
;; ;;
;; We could have them as environment variables ;; We could have them as environment variables
(def current-graal-version "20.1.0") (def current-graal-version "20.2.0")
(def current-java-version "java11") (def current-java-version "java11")
(def valid-graal-bumps ["19.3.2" "20.1.0" "20.2.0"]) (def valid-graal-bumps ["19.3.2" "20.1.0" "20.2.0" "20.3.0"])
(def valid-java-bumps ["java8" "java11"]) (def valid-java-bumps ["java8" "java11"])
(def cl-options (def cl-options

View file

@ -26,6 +26,7 @@ export PATH=$GRAALVM_HOME/bin:$PATH
SVM_JAR=$(find -L "$GRAALVM_HOME" | grep svm.jar) SVM_JAR=$(find -L "$GRAALVM_HOME" | grep svm.jar)
"$GRAALVM_HOME/bin/javac" -cp "$SVM_JAR" resources/CutOffCoreServicesDependencies.java "$GRAALVM_HOME/bin/javac" -cp "$SVM_JAR" resources/CutOffCoreServicesDependencies.java
"$GRAALVM_HOME/bin/javac" -cp "$SVM_JAR" resources/CutOffSunAwtWwwContentAudioAiff.java
if [ -z "$BABASHKA_JAR" ]; then if [ -z "$BABASHKA_JAR" ]; then
lein with-profiles +reflection,+native-image "do" run lein with-profiles +reflection,+native-image "do" run
@ -43,8 +44,8 @@ args=( "-jar" "$BABASHKA_JAR"
"-H:IncludeResources=BABASHKA_VERSION" "-H:IncludeResources=BABASHKA_VERSION"
"-H:IncludeResources=SCI_VERSION" "-H:IncludeResources=SCI_VERSION"
"-H:ReflectionConfigurationFiles=reflection.json" "-H:ReflectionConfigurationFiles=reflection.json"
"--initialize-at-run-time=java.lang.Math\$RandomNumberGeneratorHolder"
"--initialize-at-build-time" "--initialize-at-build-time"
# "-H:+PrintAnalysisCallTree"
"-H:Log=registerResource:" "-H:Log=registerResource:"
"-H:EnableURLProtocols=http,https,jar" "-H:EnableURLProtocols=http,https,jar"
"--enable-all-security-services" "--enable-all-security-services"
@ -54,6 +55,16 @@ args=( "-jar" "$BABASHKA_JAR"
"--no-server" "--no-server"
"--report-unsupported-elements-at-runtime" "--report-unsupported-elements-at-runtime"
"--initialize-at-run-time=org.postgresql.sspi.SSPIClient" "--initialize-at-run-time=org.postgresql.sspi.SSPIClient"
"--native-image-info"
"--verbose"
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.AudioFileReader"
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiFileReader"
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.MixerProvider"
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.FormatConversionProvider"
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.AudioFileWriter"
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiDeviceProvider"
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.SoundbankReader"
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiFileWriter"
"$BABASHKA_XMX" ) "$BABASHKA_XMX" )
BABASHKA_STATIC=${BABASHKA_STATIC:-} BABASHKA_STATIC=${BABASHKA_STATIC:-}

View file

@ -32,7 +32,6 @@ call %GRAALVM_HOME%\bin\native-image.cmd ^
"-H:IncludeResources=BABASHKA_VERSION" ^ "-H:IncludeResources=BABASHKA_VERSION" ^
"-H:IncludeResources=SCI_VERSION" ^ "-H:IncludeResources=SCI_VERSION" ^
"-H:ReflectionConfigurationFiles=reflection.json" ^ "-H:ReflectionConfigurationFiles=reflection.json" ^
"--initialize-at-run-time=java.lang.Math$RandomNumberGeneratorHolder" ^
"--initialize-at-build-time" ^ "--initialize-at-build-time" ^
"--initialize-at-run-time=org.postgresql.sspi.SSPIClient" ^ "--initialize-at-run-time=org.postgresql.sspi.SSPIClient" ^
"-H:EnableURLProtocols=http,https,jar" ^ "-H:EnableURLProtocols=http,https,jar" ^
@ -41,6 +40,14 @@ call %GRAALVM_HOME%\bin\native-image.cmd ^
"-H:Log=registerResource:" ^ "-H:Log=registerResource:" ^
"--no-fallback" ^ "--no-fallback" ^
"--verbose" ^ "--verbose" ^
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.AudioFileReader" ^
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiFileReader" ^
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.MixerProvider" ^
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.FormatConversionProvider" ^
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.AudioFileWriter" ^
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiDeviceProvider" ^
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.SoundbankReader" ^
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiFileWriter" ^
"%BABASHKA_XMX%" "%BABASHKA_XMX%"
if %errorlevel% neq 0 exit /b %errorlevel% if %errorlevel% neq 0 exit /b %errorlevel%