問題タブ [jdeps]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
694 参照

java - Maven と NetBeans を使用してアプリケーションを JPMS モジュールにパッケージ化する方法は?

私の目標は、jlink を使用して、カスタム JRE にバンドルされたモジュラー ランタイム イメージにアプリケーションをパッケージ化することです。私のアプリは単純な「hello world」Java Standard Edition アプリで、Guava に依存しています。JDK11を使用しています。

基本的にはこのチュートリアルを Baeldungで再現しようとしていますが、依存関係を管理する NetBeans と Maven を使用し、モジュール システムでビルドするにはMaven Compiler Pluginバージョン 3.8.1 を使用します。

ディレクトリ構造:

ここに画像の説明を入力

module-info.java ファイル:

コントローラー.java:

pom.xml:

ただし、コンパイルされたクラスが作成され、jar やモジュールは作成されません。したがって、これ以上先に進むことはできません (jar のモジュールを jdeps で分析し、次に jlink を使用します)。明らかな何かが欠けているに違いありませんが、何ですか?

0 投票する
1 に答える
383 参照

json - Gson の予期しない動作

デバイスからのデータを保存する小さなアプリケーションを開発しました。JSON 形式でデータを保存することを選択しました。データのシリアル化/逆シリアル化は、私が作成したカスタム型が含まれていても問題なく機能します...しかし、私だけがIDEで作業します(Eclipse、さらに言えば)。

ただし、実行可能な JAR ファイルをエクスポートすると、ソフトウェアが常に次の例外をスローするため、データの逆シリアル化で何らかの問題が発生します。

組み込み型ではなく、カスタム型で問題が発生すると思いました。この時点で、次の 2 つのことがわかりました。

  • 完全な JRE 9 を使用して JAR ファイルを実行すると、例外はスローされません。Jlink.exe で作成したカスタム JRE に含まれるモジュールを再確認したところ、すべてが正しく含まれていました。私はまだ小さい JRE を使用したいので、これ以上調査しませんでした (IDE で完全に動作する理由はこれで説明できると思います)。
  • カスタム デシリアライザーを Gson オブジェクトに追加し (以下を参照)、JSON 文字列を有効なデータに手動で変換するだけで、LocalDateTime クラスでの例外を回避できましたが、例外は別のクラスで単純に再表示されました。カスタムメイドの時間。

この時点で、問題を引き起こすデータ型ごとにデシリアライザーを追加するだけでよいと思いますが、完全な JRE で問題が発生しない理由と、すべてのモジュールが必要なものが含まれています。データを保存する Gson オブジェクトにカスタム シリアライザーを追加していないことにも言及する価値があるかもしれません。すべて Gson の既定値に従ってシリアル化されます。

LocalDateTimeデシリアライザー:

Jdeps.deps モジュール リスト:


受け取った回答の後、ここで問題を開きました。

0 投票する
1 に答える
57 参照

java-9 - Jigsaw ヘルパー コマンドを使用して lib/ ディレクトリから可能なすべてのパッケージのリストを取得するにはどうすればよいですか?

現在、モジュラー アプリを作成していません。

ただし、jdeps/jdeprscan がパッケージの jar ファイルをスキャンできることがわかりました。

上記のコマンドのいずれかを使用して、内部のすべての jar に含まれるすべてのパッケージを印刷する方法はありますか?lib/