長い間、最終的に、この環境で VS 2017 の開発者コマンド プロンプトを使用して、コマンド ライン経由で Graal native を使用して単純な「HelloWorld」を作成することができました。
- Graal VM: graalvm-ce-java11-19.3.2
- Windows SDK : Windows SDK 10。
他のバージョンの graal ( graalvm-ce-java11-20.2.0-dev、graalvm-ce-java8-20.2.0-dev. .) で動作させることができません。おそらく、ローカル開発環境の特殊性のためです ( Windows 7 SDK を使用できない、たとえば ..)
私の次の目標は、単純な実行可能ファイルを生成することですが、より複雑な依存関係があります。次の頂点の例
https://how-to.vertx.io/graal-native-image-howto/
理想的には、maven プラグインを使用して生成することを意図しています。それが不可能な場合は、代わりにファット jar を作成してからネイティブに変換します。
1.native-image-maven-plugin の使用
<groupId>org.graalvm.nativeimage</groupId>
<artifactId>native-image-maven-plugin</artifactId>
<version>19.3.2</version>
エラー: プロジェクト demo01GraalTestClasses で目標 org.graalvm.nativeimage:native-image-maven-plugin:19.3.2:native-image (デフォルト) を実行できませんでした: Java 11+ でネイティブ イメージを使用せずにイメージをビルドするには、MAVEN_OPTS='-- が必要ですadd-exports=java.base/jdk.internal.module=ALL-UNNAMED' -> [ヘルプ 1] [エラー]
2. ファット jar を作成した後、コマンド ラインで
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment GraalVM CE 19.3.2 (build 11.0.7+10-jvmci-19.3-b10)
OpenJDK 64-Bit Server VM GraalVM CE 19.3.2 (build 11.0.7+10-jvmci-19.3-b10, mixed mode, sharing)
[ **Important** ] call vcvars64.bat !
**native-image.cmd --verbose --static --no-fallback -H:+ReportExceptionStackTraces -jar demoGraalTestClasses.jar demo**
**Error**:
[demo:4920] classlist: 3,964.94 ms
[demo:4920] (cap): 38,810.44 ms
[demo:4920] setup: 41,140.72 ms
[demo:4920] analysis: 18,151.19 ms
Fatal error: com.oracle.svm.core.util.VMError$HostedError: class java.net.TwoStacksPlainSocketImpl not found
何か案が ???ありがとう!