jctools-graal-native_20_2_0

Substitutions required for building graal native images from code that relies on JCTools

License

License

Categories

Categories

JCTools General Purpose Libraries High Performance Graal Native Development Tools Science Business Logic Libraries
GroupId

GroupId

science.doing
ArtifactId

ArtifactId

jctools-graal-native_20_2_0
Last Version

Last Version

1.0.0
Release Date

Release Date

Type

Type

jar
Description

Description

jctools-graal-native_20_2_0
Substitutions required for building graal native images from code that relies on JCTools
Project URL

Project URL

https://github.com/SwiftEngineer/jctools-graal-native
Project Organization

Project Organization

SwiftEngineer
Source Code Management

Source Code Management

https://github.com/SwiftEngineer/jctools-graal-native

Download jctools-graal-native_20_2_0

How to add to project

<!-- https://jarcasting.com/artifacts/science.doing/jctools-graal-native_20_2_0/ -->
<dependency>
    <groupId>science.doing</groupId>
    <artifactId>jctools-graal-native_20_2_0</artifactId>
    <version>1.0.0</version>
</dependency>
// https://jarcasting.com/artifacts/science.doing/jctools-graal-native_20_2_0/
implementation 'science.doing:jctools-graal-native_20_2_0:1.0.0'
// https://jarcasting.com/artifacts/science.doing/jctools-graal-native_20_2_0/
implementation ("science.doing:jctools-graal-native_20_2_0:1.0.0")
'science.doing:jctools-graal-native_20_2_0:jar:1.0.0'
<dependency org="science.doing" name="jctools-graal-native_20_2_0" rev="1.0.0">
  <artifact name="jctools-graal-native_20_2_0" type="jar" />
</dependency>
@Grapes(
@Grab(group='science.doing', module='jctools-graal-native_20_2_0', version='1.0.0')
)
libraryDependencies += "science.doing" % "jctools-graal-native_20_2_0" % "1.0.0"
[science.doing/jctools-graal-native_20_2_0 "1.0.0"]

Dependencies

provided (1)

Group / Artifact Type Version
org.graalvm.nativeimage : svm jar 20.2.0

Project Modules

There are no modules declared in this project.

jctools-graal-native

This library contains substitutions for various bits of code in JCTools that normally cannot be compiled by Graal's SubstrateVM. These substitutions are only used at compile time, so be sure to only include them in your project's provided scope.

You only need this library if your project or one of it's dependencies actually use one of the substituted classes (graal should log warnings during compilation).

Usage

Disclaimer: Currently, this project only works for version 20.2.0 of Graal. You can recompile this project with a different version of the org.graalvm.nativeimage:svm dependency. My goal is for future versions to be more flexible.

sbt

// Contains substitutions that are necessary for native image creation. These substitutions are required since JCTools
// contains a lot of code that can't be compiled by graal native.
libraryDependencies ++= Seq(
  "science.doing" % "jctools-graal-native_20_2_0" % "1.0.0",
  "org.graalvm.nativeimage" % "svm" % "20.2.0" % Provided
)

Gradle

// Contains substitutions that are necessary for native image creation. These substitutions are required since JCTools
// contains a lot of code that can't be compiled by graal native.
compile "science.doing:jctools-graal-native_20_2_0:1.0.0"
compileOnly "org.graalvm.nativeimage:svm:20.2.0"

Versions

Version
1.0.0