2017-12-05 8 views
0

私はJava Spring Bootを使用してWebサーバーを構築しており、swagger-codegenを使用して他のプロジェクトが消費する残りのクライアントを生成しています。ターゲットフォルダからの依存関係を含む

私のインテグレーションテストで残りのクライアントをテストしたいのですが、私のプロジェクトのPOMには私のtargetディレクトリにあるmavenプロジェクト/ jar(初期ビルド後)が含まれています。

これらのテストをこの新しい依存関係で構築することは可能ですか?

+0

あなたはpom.xmlを投稿できますか? –

+0

https:// stackoverflow。com/questions/2229757/maven-add-a-relative-by-relative-path-by-relative-path – style

+0

Mavenのライフサイクルフェーズをチェックしてください:https://maven.apache.org/guides/introduction/introduction-to -the-lifecycle.html#Lifecycle_Reference新しいコードを 'generate-sources'または' generate-test-sources'(または関連する '* -resources'フェーズ – Gus

答えて

0

私は(残りのクライアントに依存します)マルチモジュールプロジェクト、サーバーごとに1つ,,(サーバーに依存)、残りのクライアント用と統合テストのための1

を作成することになりました各モジュールには独自のpomファイルがあり、構築/公開のための独自のフェーズです。私はまだ最高レベルのmvn clean install(私たちのWebアプリケーションを設定するための標準です)を動作させることはできませんが、複数のmvnコマンドを組み合わせてbashスクリプトで一緒に疲れさせることができました。

-1

私はいくつかの仮定をする必要がありますので、私が完全に間違っているか教えてください。

私は、Webサーバー

を構築しています あなたがRESTサービスを作成していることを意味しますか?統合テストでは、このクライアント - と統合テスト -

私は統合テスト

に残り、クライアントをテストするには、あなたが(おそらく)クライアントのためのユニットテストを持っており、使用することを意味し1つのモジュールとして?

私は(すでに作成されていない場合)

  • は、クライアント用に別のプロジェクトを作成することを示唆しています。
  • ローカルのレポに次のようにインストールします。mvn install
  • サービスとの統合テストのように、必要に応じてこのインストールされた成果物を依存関係として追加します。

私は本当に何のターゲットフォルダからMavenの依存関係を含むが、それはしかし、いくつかのケースでabsolutety必要であれば言うことができないにお勧めします...ターゲットフォルダ内

0

ジャーにその場所に到達していません2つの方法:

  • これはパッケージ段階に組み込まれています。
  • ローカルリポジトリからプラグインによってコピーされています。

どちらの方法でも、対象のファイルを使用することはできません。むしろ、依存関係(真の依存関係またはプロジェクト内のプロジェクト)をサーバーのテストの依存関係に追加します。統合フェーズでテストを実行します。

関連する問題