Java9でjdepsを使用して自動モジュールのモジュール情報を作成する

オプション

私はジャクソンライブラリの3つの瓶を持っています

  1. jackson-core-2.8.10.jar
  2. jackson-annotations-2.8.0.jar
  3. jackson-databind-2.8.10.jar

コアとアノテーションの両方に対してmodule-info.javaを正常に作成し、jdepsを使用してそれらを名前付きmaoduleに変換しました。

databindの場合、次のコマンドを試しました。

jdeps--generate-module-info。--module-path%JAVA_HOME%\ jomds; jackson.core; jackson.annotations previousmods \ jackson-databind-2.8.10.jar

現在、次のエラーが発生しています:

Missing dependence: .\jackson.databind\module-info.java not generated
Error: missing dependencies
   com.fasterxml.jackson.databind.AnnotationIntrospector -> com.fasterxml.jackson.annotation.JsonCreator       not found
   com.fasterxml.jackson.databind.AnnotationIntrospector -> com.fasterxml.jackson.annotation.JsonCreator$Mode  not found
   com.fasterxml.jackson.databind.AnnotationIntrospector -> com.fasterxml.jackson.annotation.JsonFormat        not found
   com.fasterxml.jackson.databind.AnnotationIntrospector -> com.fasterxml.jackson.annotation.JsonFormat$Value  not found
   com.fasterxml.jackson.databind.AnnotationIntrospector -> com.fasterxml.jackson.annotation.JsonIgnoreProperties not found
   com.fasterxml.jackson.databind.AnnotationIntrospector -> com.fasterxml.jackson.annotation.JsonIgnoreProperties$Value not found.

jackson-databindのmodule-info.javaを生成するにはどうすればよいですか?

マイケルイースター

簡単に言うと、はい、ライブラリを明示的なモジュールに変換する必要があります。

このjlinkツールは、必要なモジュールのみを含むトリミングされたバイナリイメージを提供することを目的としています。問題は、自動モジュールが、すべてのJDKモジュールを読み取ることができるクラスパス(別名、名前のないモジュール)にアクセスできることです。したがって、何もトリミングされません。

このスレッドは、YouTubeビデオへのリンクとともに、これも述べています。

この例commons-lang3-3.5.jarは、jlinkデモ用のexplictモジュールに変換されます

編集:具体的には、ここでの例であるスクリプトがために、変換、ことjackson-corejackson-annotationsおよびjackson-databindレガシー瓶モジュラー瓶へ。

アイデアは次のとおりです。

  • jdeps --generate-module-infoレガシーjarで実行
  • レガシーjarをフォルダーに解凍し、module-info.java上から追加し、再コンパイルして、再圧縮します

秘訣は、依存関係のあるモジュラーjarは、コマンドラインパラメーターとしてそれらの依存関係を必要とすることです。たとえば、ここにjackson-databind(いくらか抽象化されています):

# here, jackson-core and jackson-annotations have been built
# jackson-databind 

jdeps --module-path $ROOT_DIR/modules \
--add-modules jackson.annotations,jackson.core \
--generate-module-info work $JACKSON_DATABIND_JAR

javac --module-path $ROOT_DIR/modules \
--add-modules jackson.annotations,jackson.core \
-d $ROOT_DIR/classes module-info.java

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

AntでJava9モジュールシステムを使用する

分類Dev

Java9でモジュールプロジェクトを作成する際の問題

分類Dev

Jetty9をJava9モジュールとして使用すると、ClassNotFoundExceptionが発生します

分類Dev

Java9モジュールにサードパーティのライブラリを使用するには?

分類Dev

org.eclipse.swt(およびその他のプラグインの依存関係)を自動Java9モジュールとして追加するにはどうすればよいですか?

分類Dev

JavaでJShellでモジュールを作成します。9

分類Dev

RequireJSを使用して依存モジュールを自動的にロードする

分類Dev

EclipseでJava9マルチモジュールプロジェクトを定義する

分類Dev

自動モジュールでjlinkを使用する

分類Dev

プライベートJava9モジュールのパッケージをJUnitに公開する正しい方法は何ですか?

分類Dev

Java9以降のディレクトリからモジュールを動的にロードするにはどうすればよいですか。

分類Dev

モジュール以外のMaven依存関係を自動モジュールとしてモジュールパスに追加する方法

分類Dev

Java9では、モジュールがわからない場合、どのようにしてクラスを反射的にロードできますか?

分類Dev

実行時にJava9モジュールを含めるにはどうすればよいですか?

分類Dev

PowerShellのモジュールで動的に関数を作成する

分類Dev

ctypesを使用してPythonモジュールを作成する

分類Dev

postgresqlとdjangoを使用して地理情報を保存するために使用するのに最適なモジュールは何ですか?

分類Dev

Java9モジュールエラー:モジュール名を決定することはできません、無名のモジュールを読み込みパッケージとモジュールorg.reactivestreamsは両方からパッケージを読み込みます

分類Dev

Pythonを使用してVerilogサブモジュールのポート信号を自動的に変換する方法は?

分類Dev

java9でjavacを使用してモジュールコマンドを使用中にエラーが発生しました

分類Dev

dropwizard-migrations liquibaseモジュールを使用してデバッグ情報を出力する方法は?

分類Dev

Angular9動的ルートを使用してモジュールを動的にインポートする

分類Dev

Mavenとのjavaで使用するJava自動モジュールcdi.api 9+

分類Dev

モジュールでモジュールを使用する方法

分類Dev

モジュールなしでノードjsのJWTから情報を抽出する方法は?

分類Dev

なぜJavaの9は、単に自動モジュールにクラスパス上のすべてのJARをオンにしないのですか?

分類Dev

モジュールを参照して、複数のファイルからPowerShellモジュールを作成する

分類Dev

GitHub RestApiを使用してGitHubでサブモジュールを作成する方法

分類Dev

親モジュールを使用して子モジュールのmavenビルドを作成するにはどうすればよいですか?

Related 関連記事

  1. 1

    AntでJava9モジュールシステムを使用する

  2. 2

    Java9でモジュールプロジェクトを作成する際の問題

  3. 3

    Jetty9をJava9モジュールとして使用すると、ClassNotFoundExceptionが発生します

  4. 4

    Java9モジュールにサードパーティのライブラリを使用するには?

  5. 5

    org.eclipse.swt(およびその他のプラグインの依存関係)を自動Java9モジュールとして追加するにはどうすればよいですか?

  6. 6

    JavaでJShellでモジュールを作成します。9

  7. 7

    RequireJSを使用して依存モジュールを自動的にロードする

  8. 8

    EclipseでJava9マルチモジュールプロジェクトを定義する

  9. 9

    自動モジュールでjlinkを使用する

  10. 10

    プライベートJava9モジュールのパッケージをJUnitに公開する正しい方法は何ですか?

  11. 11

    Java9以降のディレクトリからモジュールを動的にロードするにはどうすればよいですか。

  12. 12

    モジュール以外のMaven依存関係を自動モジュールとしてモジュールパスに追加する方法

  13. 13

    Java9では、モジュールがわからない場合、どのようにしてクラスを反射的にロードできますか?

  14. 14

    実行時にJava9モジュールを含めるにはどうすればよいですか?

  15. 15

    PowerShellのモジュールで動的に関数を作成する

  16. 16

    ctypesを使用してPythonモジュールを作成する

  17. 17

    postgresqlとdjangoを使用して地理情報を保存するために使用するのに最適なモジュールは何ですか?

  18. 18

    Java9モジュールエラー:モジュール名を決定することはできません、無名のモジュールを読み込みパッケージとモジュールorg.reactivestreamsは両方からパッケージを読み込みます

  19. 19

    Pythonを使用してVerilogサブモジュールのポート信号を自動的に変換する方法は?

  20. 20

    java9でjavacを使用してモジュールコマンドを使用中にエラーが発生しました

  21. 21

    dropwizard-migrations liquibaseモジュールを使用してデバッグ情報を出力する方法は?

  22. 22

    Angular9動的ルートを使用してモジュールを動的にインポートする

  23. 23

    Mavenとのjavaで使用するJava自動モジュールcdi.api 9+

  24. 24

    モジュールでモジュールを使用する方法

  25. 25

    モジュールなしでノードjsのJWTから情報を抽出する方法は?

  26. 26

    なぜJavaの9は、単に自動モジュールにクラスパス上のすべてのJARをオンにしないのですか?

  27. 27

    モジュールを参照して、複数のファイルからPowerShellモジュールを作成する

  28. 28

    GitHub RestApiを使用してGitHubでサブモジュールを作成する方法

  29. 29

    親モジュールを使用して子モジュールのmavenビルドを作成するにはどうすればよいですか?

ホットタグ

アーカイブ