問題タブ [maven-scm-plugin]

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 投票する
4 に答える
4704 参照

maven - Perforce scm を Maven プロジェクトに構成して最新のチェンジリストを取得する

プロジェクトを Maven に移行しています。Perforce SCM リポジトリの最新の変更番号で常にビルドを参照していたため、この情報を抽出できるようにしたいと考えています。

次のリソースを使用して Maven scm プラグインを構成しようとしています。

最初に私はそれを機能させる方法を理解していないので、誰かが完全に機能する例を持っているなら、私は喜んで喜んでいます.

これは私を次のように導きます:

確かに何かを忘れてしまったので、説明書をもう一度読んで見落としているものを見つけようとしますが、誰かが知っていれば...

とにかく、私の質問はむしろ: 試してみる価値はありますか? scm プラグインから利用可能なアクションには、最後の変更情報を取得して参照ビルド番号に統合するのに役立つものは何もありません。このための独自のプラグインを開発しますか?

前もって感謝します。

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

maven - Mavenリリースプラグイン2.2.2はディストリビューション管理にプッシュしません

バグを回避するために、mavenリリースプラグインをバージョン2.2.1から2.2.2に更新する必要がありましたが、mavenリリースを実行すると、新しいバージョンのファイルがディストリビューション管理にアップロードされません。

私は以下を試しました:

  • mvn release:preparemvn release:performリリースプラグインのバージョン2.2.2の場合:新しいSNAPSHOTバージョンをアップロードします

  • mvn release:prepareバージョン2.2.1の場合mvn release:perform、バージョン2.2.2の場合:新しいバージョンをアップロードします(これは私が欲しいものです)

したがって、リリースプラグインのバージョン2.2.2で行われたセットアップはどういうわけかmvn release:perform間違っていますが、なぜこれが発生するのか本当にわかりません。

更新: target \ checkoutフォルダーをざっと見てみたところ、SNAPSHOTバージョンのpom-sがあります。そのため、release:prepare中に間違ったバージョンがチェックアウトに移動されます。

アップデート#2: git関連のものに絞り込みました。target \ checkoutフォルダーの内容は、gitcheckoutから取得されます。scm-pluginのバージョンも更新したので、これと関係があるはずです。

pom.xmlから:

私はMaven2.2.1を使用しています。

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

maven - maven-release-pluginを使用する場合、ローカルリポジトリからscm情報を検出しないのはなぜですか?

私の知る限り、maven-release-pluginを使用するには、scmセクションをPOMファイルにドロップする必要があります。例えば:

このデータは、タグ付けする対象と変更をプッシュする場所を決定するために使用されることを理解しています。しかし、コードを複製/チェックアウトしている場合、この情報はすでに利用可能ではありませんか?少なくとも理論的には、Git / HG / SVN / CVSにどのコードを処理しているかを尋ねるだけで、タグ付けする必要のあるコードをMavenに伝える必要があるという概念に少し苦労しています。詳細に何かが欠けているのではないかと思いますが、何がわかりません。maven-release-pluginコードを変更して、これを要件として削除するか、少なくとも自動検出をデフォルトにすることはできますか?そうでない場合、誰かがそれがうまくいかない理由についていくつかのコンテキストを提供できますか?

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

maven - Mavenリリースプラグインがぶら下がっている

mvn リリース プラグインを使用して CVS プロジェクトをリリースしようとしています。

mvn release:prepare で成功しましたが、release:perform を実行すると、CVS モジュールの先頭のスラッシュと思われるものが原因でハングします

/cust/shared_code

これはハング...

スラッシュの削除

これは私が期待するようにチェックアウトを開始します

私のmaven-scm-plugin v1.8.1の設定は

これは 1.0-beta-4 で修正されたようですが、 http://jira.codehaus.org/browse/SCM-216に関連しているようです。

どんな助けでも大歓迎です

ジェームズ

- - アップデート

私の release.properties が間違っているようです

これを修正する方法は不明ですが、

0 投票する
0 に答える
1142 参照

git - Maven SCM プラグインが scm:checkout の後で scm:update を実行できず、あいまいなエラー メッセージが表示される

以下を使用してプロジェクトをチェックアウトするように Maven プロジェクトを構成しました。

使用: mvn scm:checkout

プロジェクトは正常にチェックアウトされます。

scm:checkout が機能すれば、scm:update も機能するはずです。しかし、そうではありません。「-e」オプション (mvn -e scm:update) を指定して実行して完全なスタック トレースを取得すると、あいまいなエラー メッセージが表示されます。

このエラーは何を教えてくれるのでしょうか? これはおそらく Maven-scm-Plugin のバグですか? もちろん、「git-log」は存在しません。その「git log」は、Git ログ履歴を提供します。

また、指定されたヘルプ リンクは役に立ちません (私の観点から)。

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

maven - mvn release:pom ファイルがリポジトリのルートにないため、perform が失敗する

を実行しようとしてmvn release:performいますが、コマンドは pom ファイルがリポジトリのルートにあると想定しています。デフォルトをオーバーライドするために設定できるシステム プロパティまたは設定はありますか?

mvn release:prepareすべてのリリース成果物がターゲット ディレクトリにあり、リポジトリが適切にタグ付けされているため、への呼び出しは成功したようです。

重要な場合、これは git プロジェクトです。


編集これが私がしたことです:

次に、リモートリポジトリをディレクトリに複製し、target/checkoutいくつかのチャーンとリモートgitリポジトリへのプッシュの後、次のエラーが発生します。

そのため、maven はtarget/checkoutディレクトリのルートで pom ファイルを探しますが、そこは場所ではありません。

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

jenkins - Maven Release Plugin が svn をスローします: '' is not a working copy

Maven 化されたプロジェクトがあり、リリースしようとすると、次のエラーが発生します。

以下の質問があります。

  1. scm構成はPOMファイルでどのように指定されていますか
  2. scm への通信が https 経由で行われる必要がある場合、クライアント側で証明書を構成するにはどうすればよいですか
  3. リリースはブランチまたはトランクから行う必要があります

私のscm構成は次のとおりです。

私のmavenリリースプラグインの構成は次のとおりです。

私はここで打たれ、先に進むことができません。問題を解決するために私を助けてください/ガイドしてください。Jenkins で Maven Release Plugin を構成して同じことを実行すると、「svn: 認証が必要です」という別のエラーが表示されます。この違いはなぜでしょう。

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

maven - Maven - Mercurial/Svn - svn/hg タグが終了コード 255 で失敗しました

ソース管理ツールとして Mercurial (hg) を使用し、ビルド システムとして Maven を使用しています。

リリース プロセスの実行中に (versions-maven-plugin: versions:set -Dxxx=yyy versions:use-releases xxxxx yyy ターゲットを使用)、プロジェクトで有効なリリース ビルドを実行するための有効な pom ファイルを取得しました。

リリース ビルドが成功したら、次のステップは、変更されたファイル (バージョン プラグインによって変更された) をコミットすることです。私は maven-scm-plugin (scm:checkin および scm:tag) を使用しています。私のソース管理ツールは Mercurial/hg であるため、scm:xxx 操作は hg コマンドを呼び出します (svn やその他のツールの代わりに - 参考までに)。

有効な設定が<scm>. for connection and developerConnection..<scm>あるため、scm:checkin は期待どおりに機能しました。

しかし、scm:tag の開始中に次のエラーが発生します。私がやっている何が間違っているのですか?

PS :
1.同じ操作 (scm:checkin および scm:tag)は、他のプロジェクトでも正常に機能します。
2. maven-release-pluginを使用していません

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

jenkins - Jenkins がチェックアウト プル操作のためにユーザー名とパスワードの資格情報を渡す方法

Jenkins / Mercurial の最新バージョンがあります。マシンは Red Hat Linux 6.6 です。

Jenkins で Release プラグインを使用しています。プロジェクトでリリース プロセスを実行するための Maven プラグイン (maven-scm-plugin、maven-version-plugin、maven-enforcer-plugin)。これらのバージョンはすべて利用可能な最新バージョンを使用しており、構成は正しく設定されています。

Jenkins の仕事では、RhodeCode (Mercurial hg) の背後にあるプロジェクトからソース コードをチェックアウトしています。 ここに画像の説明を入力

出力は次のように表示されます。

上記のように、Mercurial DVCS ツールで読み取り/チェックアウト操作を実行するユーザーを指定したため、Jenkins は hg コマンドを開始する際に一連のパラメーターを渡しました。

--config auth.jenkins.prefix=* --config ******** --config ******** --config "auth.jenkins.schemes=http https"

Maven SCMプラグインを使用していて、それが目標である場合、同じものを送信する方法を見つけようとしています。

scm:checkin
scm:tag
などは、呼び出されると、下にあるバージョン管理コマンド (私の場合は、hg branch、hg outside、hg push コマンド) を開始します。

現在、上記の hg コマンドは、ユーザーがユーザー名パスワード変数セットを含む~/.hgrcファイルを持っていないか、ユーザーがターゲットのRhodeCode /Mercurial リポジトリへの「書き込み」アクセス権を持っていないという事実により失敗しています。

  • ~/.hgrc ファイルを構成しようとしました (Mercurial docs に従って)。このファイルで指定したユーザー名がターゲット ソース コード リポジトリ/プロジェクトで有効な WRITE アクセス権を持っている場合、上記のエラー メッセージは表示されません

  • これは、ビルド マシンにキーリングと mercurial_keyring 拡張機能/プラグインをインストール/構成することでも解決できます (これはオンラインの mercurial キーリング ドキュメントに従って簡単です)。

私が見つけようとしているのは、 --config xxxxx
パラメーターを渡すにはどうすればよいですか ( Jenkins ジョブのソース コード管理で入力した設定値が原因で、Jenkins がチェックアウト/プル操作の実行中に渡すように) Maven SCM プラグインscm:checkin / scm:tagゴールを開始しているときに呼び出されるhgコマンドは、最終的にhgコマンド (hg outside、 hg push ) / ~/.hgrc を設定せずにすべての hg コマンドを呼び出し、mercurial_keyring をインストールしますか?

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

git - パスワードをプレーンテキストで保存せずに git で maven-scm-plugin を使用する

github のリポジトリ (のデフォルト ブランチ) をエクスポート/チェックアウトするには、maven-scm-plugin を使用する必要があります。ユーザー名/パスワードをどこかにハードコードすると、これを機能させることができますが、ssh キーまたはローカル ファイルシステムのパスワード マネージャーを使用することはできません。

コマンド プロンプトで、「git clone git@github.com:org/repo」または「git clone https://github.com/org/repo」を実行すると、手動で再入力しなくても完了します。ユーザー名/パスワードの詳細。

私のプラグインでは、connectionUrl を scm:git: https://github.com/org/repo " にすることができ、"-Dusername=foo -Dpassword=bar" を渡すことができます。ユーザー名/パスワード (foo/bar) をプレーンテキストでどこかに。

それを setting.xmlに入れてargs として渡し、それらをpomファイル自体に入れるというアドバイスを見てきました。そして、ssh 接続がサポートされているという証拠を見つけました。しかし、ssh 接続の実際の使用や、どこかにプレーン テキストのパスワードがない https 接続を見つけることができません。何かアドバイス?

私は次のように動作しました( -Dusername= -Dpassword= を渡す場合):