"आप रिएक्टर परियोजनाओं की सूची में एक स्नैपशॉट परियोजना नहीं है।" जेनकींस मावेन रिलीज प्लगइन का उपयोग करते समय


105

मैं जेएनकिंस के नवीनतम संस्करण और मावेन रिलीज प्लगइन पर एसवीएन, मावेन 3.0.3 का उपयोग कर रहा हूं। मैं मावेन रिलीज प्लगइन (जेनकींस के माध्यम से) का उपयोग करने की कोशिश कर रहा हूं और एक सूखा रन कर रहा हूं, इसलिए विकल्पों को निष्पादित कर रहा हूं ...

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 चेकआउट तरीका "हमेशा एक नई कॉपी चेकआउट करें" पर सेट है और मेरे स्नैपशॉट रिपॉजिटरी में प्रश्न में एक स्नैपशॉट संस्करण है, लेकिन मेरी रिलीज़ रिपॉजिटरी में नहीं। क्या मेरा स्नैपशॉट रेपो देखने के लिए "रिएक्टर प्रोजेक्ट्स लिस्ट" प्राप्त करने का कोई तरीका है?

संपादित करें: मैं अपने पोम के स्निपेट को शामिल कर रहा हूं जहां परियोजना को इसका संस्करण मिलता है - यह इसे माता-पिता से विरासत में मिला है

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

2
versionतुम्हारे में क्या है pom.xml?
MariuszS

जवाबों:


156

आप एक विरूपण साक्ष्य जारी करने की कोशिश कर रहे हैं जो स्नैपशॉट नहीं है। इसका मतलब है कि आपकी कलाकृतियों का वर्जन नंबर 3.0.3 जैसा है। उस संस्करण संख्या का तात्पर्य इसके पहले जारी किए गए से है। आप कोई रिलीज़ नहीं कर सकते। बीच में कोई बदलाव नहीं होगा और इसलिए कोई मतलब नहीं है।

आप केवल स्नैपशॉट संस्करण जारी करने वाले हैं। इसका मतलब है कि आपका वर्जन नंबर 3.0.3-SNAPSHOT जैसा होगा।


1
मैंने कहा कि मुझे अपना संस्करण कैसे मिल रहा है - मैं इसे एक मूल पोम से प्राप्त कर रहा हूं। अफसोस की बात है कि अगर मैं "-SNAPSHOT" को शामिल करने के लिए संस्करण बदलता हूं, तो मुझे त्रुटि मिलती है, "लक्ष्य को निष्पादित करने में विफल रहा। org.apache.maven.plugins: maven-release-plugin: 2.0: प्रोजेक्ट myproject पर (डिफ़ॉल्ट-सीएलआई) तैयार कर सकते हैं: गैर-निर्भर निर्भरताओं के कारण टी रिलीज़ प्रोजेक्ट "
डेव

@ मुझे लगता है कि आपको माता-पिता को भी एक स्नैपशॉट बनाना होगा।
डैनियल कपलान

मुझे इस बारे में एक दूसरा SO प्रश्न खोलने की आवश्यकता हो सकती है, लेकिन मूल पोम में एक SNAPSHOT संस्करण है, हालाँकि यह "53.0.0-SNAPSHOT" है (इसके बजाय जो मैं कोशिश कर रहा हूँ, वह 52.0.0-SNAPSHOT है) । क्या आप पैरेंट पोम में संस्करण बदलने की बात कर रहे थे?
डेव

1
मुझे लगता है कि त्रुटि संदेश स्वयं व्याख्यात्मक नहीं है जब तक कि आप नहीं जानते कि "रिएक्टर प्रोजेक्ट्स सूची" का क्या मतलब है। बहुत स्पष्ट उत्तर के लिए धन्यवाद।

10
यह समझना बहुत आसान होगा कि क्या वे सिर्फ एक संदेश जोड़ेंगे जैसे "आप एक रिलीज नहीं कर सकते।" संदेश जो वे साथ आते हैं, "आपके पास रिएक्टर परियोजनाओं की सूची में एक स्नैपशॉट प्रोजेक्ट नहीं है।" ... इस संदेश की व्याख्या कौन करेगा जिस तरह से यह माना जाता है?
seba.wagner

8

जेनकिंस कार्यक्षेत्र सफाई नहीं है या आपके FINALअंदर संस्करण है pom.xml। जेनकिन्स के पास कार्यक्षेत्र की सफाई के लिए चेक-आउट की रणनीति है।

अधिक: मावेन रिलीज प्लगइन - स्नैपशॉट प्रोजेक्ट की जरूरत

चेक-आउट रणनीति विकल्प:

  • पहले हटा कर अनुकरण स्वच्छ चेकआउट unversioned फ़ाइलें / नजरअंदाज कर दिया फ़ाइलों, साथ ही फ़ाइलें / निर्देशिका द्वारा नजरअंदाज कर दिया svn:ignore, तो निष्पादित svn update
  • हमेशा ताजा कॉपी देखें
  • अद्यतन से पहले svn update, जितना संभव हो उतना उपयोग svn revertकरें

"जेनकिन्स के पास कार्यक्षेत्र की सफाई के लिए विकल्प" के क्या मायने हैं? ये विकल्प कहां हैं? क्या आप जेनकिंस के लिए कार्यक्षेत्र सफाई प्लगइन के बारे में बात कर रहे हैं?
डेव

चेक-आउट की रणनीति के विकल्प
MariuszS

1
मेरे लिए यह मामला था, जेनकिंस के कार्यक्षेत्र को साफ़ करने के बाद इसने काम किया।
rbhawsar

1

अपने प्रोजेक्ट POM फ़ाइल को पहले से निर्मित कोड आधार से एक नए संस्करण में टक्कर दें।

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


0

चेक-आउट रणनीति को बदलने के लिए "पहले से बिना तोड़-फोड़ वाली फ़ाइलों / अनदेखा फ़ाइलों को हटाकर स्वच्छ चेकआउट का अनुकरण करें, फिर svn अपडेट" ने मेरे लिए चाल चली।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.