web-dev-qa-db-ja.com

「原子炉プロジェクトリストにSNAPSHOTプロジェクトがありません。」 Jenkins Mavenリリースプラグインを使用する場合

最新バージョンのJenkinsでSVN、Maven 3.0.3、およびMaven Releaseプラグインを使用しています。私はMavenリリースプラグイン(Jenkins経由)を使用してドライランを実行しようとしているため、オプションを実行しています…

Executing Maven:  -B -f /scratch/jenkins/workspace/myproject/myproject/pom.xml -DdevelopmentVersion=53.0.0-SNAPSHOT -DreleaseVersion=52.0.0 -Dusername=***** -Dpassword=********* -DskipTests -P prod -Dresume=false -DdryRun=true release:prepare

しかし、ドライランは以下のエラーで死にかけています…

[JENKINS] Archiving /scratch/jenkins/workspace/myproject/myproject/pom.xml to /home/evotext/hudson_home/jobs/myproject/modules/org.mainco.subco$myproject/builds/2013-11-18_16-09-14/archive/org.mainco.subco/myproject/52.0.0/myproject-52.0.0.pom
Waiting for Jenkins to finish collecting data
mavenExecutionResult exceptions not empty
message : Failed to execute goal org.Apache.maven.plugins:maven-release-plugin:2.0:prepare (default-cli) on project myproject: You don't have a SNAPSHOT project in the reactor projects list.
cause : You don't have a SNAPSHOT project in the reactor projects list.
    Stack trace : 
org.Apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal  org.Apache.maven.plugins:maven-release-plugin:2.0:prepare (default-cli) on project myproject: You don't have a SNAPSHOT project in the reactor projects list.
    at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:213)
    at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:153)
    at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:145)
    at org.Apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.Java:84)
    at org.Apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.Java:59)
    at org.Apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.Java:183)
    at org.Apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.Java:161)
    at org.Apache.maven.DefaultMaven.doExecute(DefaultMaven.Java:320)
    at org.Apache.maven.DefaultMaven.execute(DefaultMaven.Java:156)
    at org.jvnet.hudson.maven3.launcher.Maven3Launcher.main(Maven3Launcher.Java:117)
    at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:57)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:43)
    at Java.lang.reflect.Method.invoke(Method.Java:606)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.Java:329)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.Java:239)
    at org.jvnet.hudson.maven3.agent.Maven3Main.launch(Maven3Main.Java:178)
    at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:57)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:43)
    at Java.lang.reflect.Method.invoke(Method.Java:606)
    at hudson.maven.Maven3Builder.call(Maven3Builder.Java:129)
    at hudson.maven.Maven3Builder.call(Maven3Builder.Java:67)
    at hudson.remoting.UserRequest.perform(UserRequest.Java:118)
    at hudson.remoting.UserRequest.perform(UserRequest.Java:48)
    at hudson.remoting.Request$2.run(Request.Java:326)
    at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.Java:72)
    at Java.util.concurrent.FutureTask.run(FutureTask.Java:262)
    at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1145)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:615)
    at Java.lang.Thread.run(Thread.Java:744)
Caused by: org.Apache.maven.plugin.MojoFailureException: You don't have a SNAPSHOT project in the reactor projects list.
    at org.Apache.maven.plugins.release.PrepareReleaseMojo.prepareRelease(PrepareReleaseMojo.Java:219)
    at org.Apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.Java:181)
    at org.Apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.Java:101)
    at org.Apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.Java:209)
    ... 30 more
Caused by: org.Apache.maven.shared.release.ReleaseFailureException: You don't have a SNAPSHOT project in the reactor projects list.
    at org.Apache.maven.shared.release.phase.CheckPomPhase.execute(CheckPomPhase.Java:111)
    at org.Apache.maven.shared.release.phase.CheckPomPhase.simulate(CheckPomPhase.Java:123)
    at org.Apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.Java:199)
    at org.Apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.Java:140)
    at org.Apache.maven.shared.release.DefaultReleaseManager.prepare(DefaultReleaseManager.Java:103)
    at org.Apache.maven.plugins.release.PrepareReleaseMojo.prepareRelease(PrepareReleaseMojo.Java:211)
    ... 33 more

SVNチェックアウト方法が「常に新しいコピーをチェックアウトする」に設定されており、スナップショットリポジトリに問題のスナップショットバージョンがありますが、リリースリポジトリにはありません。スナップショットリポジトリを確認するために「リアクタプロジェクトリスト」を取得する方法はありますか?

編集: 私はプロジェクトがバージョンを取得する私のpomのスニペットを含めています-それは親からそれを継承します

    <parent>
            <artifactId>subco</artifactId>
            <groupId>org.mainco.subco</groupId>
            <version>52.0.0</version>
    </parent>
91
Dave

スナップショットではないアーティファクトをリリースしようとしています。つまり、アーティファクトのバージョン番号は3.0.3のようなものです。そのバージョン番号は、すでにリリースされていることを意味します。リリースをリリースすることはできません。間に変更はないため、ポイントはありません。

SNAPSHOTバージョンのみをリリースすることになっています。つまり、バージョン番号は3.0.3-SNAPSHOTのようになります。

135
Daniel Kaplan

Jenkinsワークスペースがクリーンアップされていないか、pom.xml内にFINALバージョンがあります。 Jenkinsには、ワークスペースをクリーンアップするためのチェックアウト戦略があります。

詳細: Mavenリリースプラグイン-SNAPSHOTプロジェクトが必要

チェックアウト戦略オプション:

  • バージョン管理されていないファイル/無視されたファイル、およびsvn:ignoreによって無視されたファイル/ディレクトリを最初に削除して、クリーンチェックアウトをエミュレートし、次にsvn updateを実行します。
  • 常に最新のコピーをチェックアウトする
  • svn updateを可能な限り使用し、更新前にsvn revertを使用します
6
MariuszS

チェックアウト戦略を「最初にバージョン管理外のファイル/無視されたファイルを削除し、次にsvn updateでクリーンチェックアウトをエミュレートする」に変更すると、私にとってはうまくいきました。

0
Faentur

以前にビルドされたコードベースから新しいバージョンにプロジェクトPOMファイルをバンプアップします。

1.0.1-SNAPSHOT<version>1.0.1-SNAPSHOT</version>

0
Mr Nsubuga