問題タブ [maven-scm]
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.
maven - Mavenを使用してpomファイルをSCMにチェックインする
Mavenバージョンプラグインを使用して、pomファイルのバージョン番号を更新します。
次に、ビルドを実行する前に、pomファイルを手動でチェックインします。バージョンプラグインがファイルを自動的にチェックインできるとは思いませんか?Mavenリリースプラグインは、「prepare」ゴールを使用してファイルをチェックインするための機能を提供しているようです。
maven - その場で変数を補間するが、置換をファイルに保存しないmavenリリース
POM ファイルには、環境設定からの現在のシステム ユーザーの変数を含む、cvs リポジトリへの URL を定義する scm セクションがあります。
今の問題は、maven ゴール release:prepare を実行すると、変数は現在のユーザーで補間されますが (これは一般的には問題ありません)、実行が終了すると、versionString
更新されるだけでなく POM ファイルになってしまいます (これはも問題ありません)、${env.CVS_USER}
変数は現在のユーザーに置き換えられたままです。バージョン文字列が変更されたために変更されたPOMファイルを自動的にチェックインしたい場合、突然絶対ユーザー情報もチェックインしますが、それは他のユーザーにとって意味がありません。
したがって、私の質問は、maven の変数補間が RUNTIME でのみ機能しないのはなぜですか。ただし、POM ファイルの変数宣言を変更せずに変更するだけでversionString
、このユースケースでのみ変更できます。
java - Maven ScmProvider.list メソッドを使用すると、ダッシュがハイフンに変換されます
Java のファイル オブジェクトは、文字 en-dash '–' (unicode \u2013
) をサポートしていません。en-dash 文字をハイフン '-' (unicode \u002D
) に自動的に変換しています。
私はScmProvider.listメソッドを使用しています:
リポジトリに存在するように、fileSet の各要素 (ファイルとディレクトリ) を一覧表示します。
ファイル セットでは、アイテムの 1 つ (SCM ファイル) に、エンダッシュが通常のハイフンに置き換えられたリポジトリ アイテムがあります。
Java バージョン 1.6 を使用しています。これに関して制限はありますか?
java - scmManagerを使用したScmVersionバージョンベースのチェックアウト
列の1つにリビジョンを表示するjfaceテーブルがあります(リビジョンは単なる数字です)。実装しようとしているのは次のとおりです。
- 行を選択してリビジョンを選択します。
- 右クリックして、リポジトリからのリビジョンに基づいてチェックアウトします。
現在使用されているAPI:
行選択から取得したリビジョン番号を渡したいと思います。
テーブルセルのリビジョン番号を使用して、リビジョンに基づいてチェックアウトするのに役立つAPIは何ですか?
git - scm-maven-plugin を使用する場合、pom でコミット メッセージを指定するにはどうすればよいですか?
自動ビルド中にいくつかのファイルを git リポジトリにコミットするために maven SCM プラグインを使用しようとしています。プラグインではコミット メッセージをシステム プロパティとして設定する必要があります。コマンドでこれを渡す必要はありません。行(リリースプラグインも使用しているため、問題が発生します)。
私はpomを介してメッセージシステムプロパティを追加するために私が考えるすべてを試しましたが、運はありません.これは私のpomの簡素化されたバージョンです:
プロファイル プロパティを介したメッセージの追加は機能しているようです。ファイルは取得するようにコミットされ、メッセージはリポジトリに表示されますが、ビルドは次のエラーで失敗します。
私が間違っていることについてのアイデアはありますか?
乾杯 ロブ
maven-2 - Maven でバージョン管理された jar を作成する
最初にバージョン1.0でjarを作成し、次にバージョン1.1でjarを作成し、次に1.2でjarを作成するときのように、バージョン付きのjarを作成するmavenゴールを作成したい...最新のjarバージョンの場合は 1.2 で、次にビルドすると、バージョン 1.3 の jar が作成されます。出来ますか?
または、jar をビルドするたびに作成するバージョンを jar に提供する必要があります。または、これをすべて行うMavenゴールを作成する必要がありますか? これに対する解決策がある場合は、私を案内してください。
アップデート:
次の回答に従って、タイムスタンプ付きの buildnumber-maven-plugin を使用してタイムスタンプ付きのビルドを作成しましたが、期待どおりに動作しますが、ビルドとともにリビジョン番号を使用しようとすると、例外がスローされます:
私の pom.xml には以下が含まれます:
詳細とビルド番号プラグインを含めたばかりなので、プラグインが必要ですか。
maven - maven scm - maven はタグを自動的に作成しますか?
以下の構成が整っています-
私の質問は、私のプロジェクトのバージョンが変更されるたびに、上記の scm 構成が変更されることです。0.1 から 0.2 などと言ってください... これらのタグが svn で作成されていることを確認する必要がありますか、それとも maven がタグを作成しますか? Maven が上記の構成でタグを作成する場合、既にhttp://example.com/tags/MyProjectを利用できますが、上記にタグ付けしていませんか?
誰か私にいくつかの考えを記入してください。
maven - Maven Release: Prepare/Perform after Rollback incorrectly succeeds with wrong content
We use Maven with Subversion internally. We also use Maven's Release plugin. We noticed the issue described below when running through the following (correct, I presume) steps.
1. We run release:prepare
:
- Maven updates the trunk version to
1.0.0
. - Maven runs
svn copy trunk/myproject tags/myproject-1.0.0
, thus creating tagmyproject-1.0.0
. - Maven updates the trunk version to
1.0.1-SNAPSHOT
.
2. We run release:rollback
:
- Maven resets the trunk version to
1.0.0-SNAPSHOT
. - Maven does not remove the tag, because Maven doesn't do this kind of stuff.
3. We commit more changes to trunk, obviously against version 1.0.0-SNAPSHOT
.
4. We run release:prepare
again:
- Maven updates the trunk version to
1.0.0
. - Maven runs
svn copy trunk/myproject tags/myproject-1.0.0
, thinking it created tagmyproject-1.0.0
out of the latest trunk. But, alas, Subversion (1.6 and 1.7 alike) will instead createtags/myproject-1.0.0/myproject
on Maven's behalf.
5. We run release:perform
:
- Maven checks out the contents of tag
myproject-1.0.0
. - Maven builds the contents and deploys the result to Nexus.
The problem is obvious: the change in step 3 did not make it into the tag. We are now releasing 1.0.0
without the change in it.
The questions are: How can we fix this? Is Maven's release rollback feature inherently broken?
maven - Maven SCM セクションでアーティファクト ID を抑制する
プロジェクト pom (子) がこの構成を定義する必要がないように、組織内の共有 Maven 親 pom で SCM サーバーを構成したいと考えています。追加したい構成は次のようになります。
残念ながら、Maven は、これらのフィールドを解決するとき (Maven サイトを構築するとき)、すべての URL に artifactId を自動的に追加します。これは、artifactId プロパティへの参照を削除するだけでよいため、最初の 2 つのフィールドでは許容されますが、最後のフィールドでは、不適切な URL ( httpではなくhttp://myscmserver.com/hg/myArtifact/html/myArtifact ) になります。 ://myscmserver.com/hg/myArtifact/html )。
artifactId の自動追加を抑制する方法はありますか? この場合、子ポンを変更することはできません。
maven-scm - Does maven expose scmUrl as a property?
I'm using maven scm plugin and buildnumber plugin to get set buildNumber property from revision. I'd like to get the full url as well but it doesn't appear to be exposed as a property. I know I can call svn info and grep for it but I figured the maven way would be to expose it.
Please let me know if there is a plugin that exposes the url as a property.
For now, I plan to add the functionality to buildNumber plugin and submit a patch.
Thanks
Peter