Maven Archetype
  1. Maven Archetype
  2. ARCHETYPE-359

fail on mvn install with a archetype created from create-from-project command having required property in archetype-metadata.xml

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 2.0
    • Fix Version/s: 2.1
    • Component/s: Archetypes
    • Labels:
      None
    • Environment:
    • Number of attachments :
      2

      Description

      mvn install fails when archetype-metadata.xml having required property entry.

      [INFO] Scanning for projects...
      [INFO] ------------------------------------------------------------------------
      [INFO] Building quipoz-qte-project-archetype-archetype
      [INFO]    task-segment: [install]
      [INFO] ------------------------------------------------------------------------
      [INFO] [resources:resources {execution: default-resources}]
      [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
      [INFO] Copying 25 resources
      [INFO] [resources:testResources {execution: default-testResources}]
      [WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
      [INFO] Copying 2 resources
      [INFO] [archetype:jar {execution: default-jar}]
      [INFO] [archetype:add-archetype-metadata {execution: default-add-archetype-metadata}]
      [INFO] [archetype:integration-test {execution: default-integration-test}]
      [ERROR] Archetype quipoz-qte-project-archetype:quipoz-qte-project-archetype-archetype:0.0.1-SNAPSHOT is not configured
      	Property check is missing.
      org.apache.maven.archetype.exception.ArchetypeNotConfigured: Archetype quipoz-qte-project-archetype:quipoz-qte-project-archetype-archetype:0.0.1-SNAPSHOT is not configured
      	Property check is missing.
      	at org.apache.maven.archetype.generator.DefaultFilesetArchetypeGenerator.generateArchetype(DefaultFilesetArchetypeGenerator.java:128)
      	at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.processFileSetArchetype(DefaultArchetypeGenerator.java:136)
      	at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.generateArchetype(DefaultArchetypeGenerator.java:106)
      	at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.generateArchetype(DefaultArchetypeGenerator.java:149)
      	at org.apache.maven.archetype.mojos.IntegrationTestMojo.processIntegrationTest(IntegrationTestMojo.java:237)
      	at org.apache.maven.archetype.mojos.IntegrationTestMojo.execute(IntegrationTestMojo.java:108)
      	at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
      	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
      	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
      	at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
      	at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
      	at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
      	at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
      	at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
      [INFO] ------------------------------------------------------------------------
      [ERROR] BUILD ERROR
      [INFO] ------------------------------------------------------------------------
      [INFO] Test basic failed
      [Ljava.lang.StackTraceElement;@108f8e0
      org.apache.maven.archetype.exception.ArchetypeNotConfigured: Archetype quipoz-qte-project-archetype:quipoz-qte-project-archetype-archetype:0.0.1-SNAPSHOT is not configured
      	Property check is missing.
      
      
      [INFO] ------------------------------------------------------------------------
      [INFO] For more information, run Maven with the -e switch
      [INFO] ------------------------------------------------------------------------
      [INFO] Total time: 1 second
      [INFO] Finished at: Tue Jan 11 18:35:26 IST 2011
      [INFO] Final Memory: 14M/35M
      [INFO] ------------------------------------------------------------------------
      1. archetype359.tar.gz
        7 kB
        Laird Nelson
      2. output.txt
        4 kB
        Abhishek Sharma

        Activity

        Hide
        Maarten Winkels added a comment -

        The build fails in the integration-test phase, because the new property is not assigned in the src/test/resources/projects/basic/archetype.properties.
        Simply adding a line to that file with an assignment for the new property will solvve this.

        Not really blocking?

        Show
        Maarten Winkels added a comment - The build fails in the integration-test phase, because the new property is not assigned in the src/test/resources/projects/basic/archetype.properties. Simply adding a line to that file with an assignment for the new property will solvve this. Not really blocking?
        Hide
        Abhishek Sharma added a comment -

        Is this is to be added manually or this is an issue??
        On Goggling for this issue i found no solution and nobody discuss over file archetype.properties.
        Everywhere discussion goes around archetype-metadata.xml.

        Show
        Abhishek Sharma added a comment - Is this is to be added manually or this is an issue?? On Goggling for this issue i found no solution and nobody discuss over file archetype.properties. Everywhere discussion goes around archetype-metadata.xml.
        Hide
        Herve Boutemy added a comment -

        can you create a sample project to reproduce the problem?

        Show
        Herve Boutemy added a comment - can you create a sample project to reproduce the problem?
        Hide
        Björn Mahler added a comment -

        well there is no special situation needed - it fails everytime you put a (custom) required property in the archetype-metadata and "forget" to add it in the archetype.properties file. I only solved this problem by looking manually into the tests and saw the crap . Besides I think it's a bug but not a blocker as Maarten said before.

        So I don't think a sample is needed? Or is it not reproducable by yourself?

        Show
        Björn Mahler added a comment - well there is no special situation needed - it fails everytime you put a (custom) required property in the archetype-metadata and "forget" to add it in the archetype.properties file. I only solved this problem by looking manually into the tests and saw the crap . Besides I think it's a bug but not a blocker as Maarten said before. So I don't think a sample is needed? Or is it not reproducable by yourself?
        Hide
        Herve Boutemy added a comment -

        yes, I need a sample content and commands used: it seems it is easy for you to create it, that's great

        but for the moment, I personnally don't know how to write a project that will have a property when archetype created from create-from-project and I would loose time trying to write one: if you create a sample project, it will help me to focus on fixing the issue

        Show
        Herve Boutemy added a comment - yes, I need a sample content and commands used: it seems it is easy for you to create it, that's great but for the moment, I personnally don't know how to write a project that will have a property when archetype created from create-from-project and I would loose time trying to write one: if you create a sample project, it will help me to focus on fixing the issue
        Hide
        Laird Nelson added a comment -

        Oh for goodness' sake. Here's a small project that reproduces (trivially) the problem.

        I assembled the project by doing this:

        mvn clean archetype:create-from-project
        (edited target/generated-sources/archetype/src/main/resources/META-INF/maven/archetype-metadata.xml; added required properties section)

        To reproduce the issue, go into target/generated-sources/archetype and do mvn install.

        Show
        Laird Nelson added a comment - Oh for goodness' sake. Here's a small project that reproduces (trivially) the problem. I assembled the project by doing this: mvn clean archetype:create-from-project (edited target/generated-sources/archetype/src/main/resources/META-INF/maven/archetype-metadata.xml; added required properties section) To reproduce the issue, go into target/generated-sources/archetype and do mvn install.
        Hide
        Herve Boutemy added a comment -

        Oh for goodness' sake.

        IIUC, you're manually modifying an archetype in a way that causes a failure.

        But the archetype generated by archetype plugin in the first place didn't fail.
        Then I don't understand where is the bug in the create-from-project task?

        Show
        Herve Boutemy added a comment - Oh for goodness' sake. IIUC, you're manually modifying an archetype in a way that causes a failure. But the archetype generated by archetype plugin in the first place didn't fail. Then I don't understand where is the bug in the create-from-project task?
        Hide
        Gordon Daugherty added a comment -

        IIUC then this bug title is wrong. The title should be something like:

        "The archetype:integration-test phase fails when src/test/resources/projects/mytest/archetype.properties does not define / is missing a custom property that is defined in archetype-metadata.xml as being required"

        In this situation I'd expect the integration test to fail.

        It seems like the error message should be clearer when this occurs. Instead of "Property check is missing" maybe "Property '<yourCustomProperty>' is not defined in file 'archetype.properties'" would be more appropriate.

        Show
        Gordon Daugherty added a comment - IIUC then this bug title is wrong. The title should be something like: "The archetype:integration-test phase fails when src/test/resources/projects/mytest/archetype.properties does not define / is missing a custom property that is defined in archetype-metadata.xml as being required" In this situation I'd expect the integration test to fail. It seems like the error message should be clearer when this occurs. Instead of "Property check is missing" maybe "Property '<yourCustomProperty>' is not defined in file 'archetype.properties'" would be more appropriate.
        Hide
        Herve Boutemy added a comment -

        improved the message in r1161774
        result looks now like this:

        [INFO] --- maven-archetype-plugin:2.1-SNAPSHOT:integration-test (default-integration-test) @ mvn-archetype-359-archetype ---
        [INFO] Processing Archetype IT project: basic
        [ERROR] Archetype ljnelson:mvn-archetype-359-archetype:1.0-SNAPSHOT is not configured
                Property requiredPropertyWithoutDefaultValue is missing.
        org.apache.maven.archetype.exception.ArchetypeNotConfigured: Archetype ljnelson:mvn-archetype-359-archetype:1.0-SNAPSHOT is not configured
                Property requiredPropertyWithoutDefaultValue is missing.
                at org.apache.maven.archetype.generator.DefaultFilesetArchetypeGenerator.generateArchetype(DefaultFilesetArchetypeGenerator.java:126)
                at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.processFileSetArchetype(DefaultArchetypeGenerator.java:136)
                at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.generateArchetype(DefaultArchetypeGenerator.java:106)
                at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.generateArchetype(DefaultArchetypeGenerator.java:149)
                at org.apache.maven.archetype.mojos.IntegrationTestMojo.processIntegrationTest(IntegrationTestMojo.java:276)
                at org.apache.maven.archetype.mojos.IntegrationTestMojo.execute(IntegrationTestMojo.java:129)
                at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
                at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
                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:319)
                at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
                at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
                at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
                at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
                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:616)
                at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
                at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
                at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
                at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
        [INFO] ------------------------------------------------------------------------
        [INFO] BUILD FAILURE
        [INFO] ------------------------------------------------------------------------
        [INFO] Total time: 0.909s
        [INFO] Finished at: Thu Aug 25 23:58:33 CEST 2011
        [INFO] Final Memory: 7M/150M
        [INFO] ------------------------------------------------------------------------
        [ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.1-SNAPSHOT:integration-test (default-integration-test) on project mvn-archetype-359-archetype:
        [ERROR] Archetype IT 'basic' failed: Missing required properties in archetype.properties: requiredPropertyWithoutDefaultValue
        [ERROR] -> [Help 1]
        [ERROR] 
        [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
        [ERROR] Re-run Maven using the -X switch to enable full debug logging.
        [ERROR] 
        [ERROR] For more information about the errors and possible solutions, please read the following articles:
        [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
        
        Show
        Herve Boutemy added a comment - improved the message in r1161774 result looks now like this: [INFO] --- maven-archetype-plugin:2.1-SNAPSHOT:integration-test (default-integration-test) @ mvn-archetype-359-archetype --- [INFO] Processing Archetype IT project: basic [ERROR] Archetype ljnelson:mvn-archetype-359-archetype:1.0-SNAPSHOT is not configured Property requiredPropertyWithoutDefaultValue is missing. org.apache.maven.archetype.exception.ArchetypeNotConfigured: Archetype ljnelson:mvn-archetype-359-archetype:1.0-SNAPSHOT is not configured Property requiredPropertyWithoutDefaultValue is missing. at org.apache.maven.archetype.generator.DefaultFilesetArchetypeGenerator.generateArchetype(DefaultFilesetArchetypeGenerator.java:126) at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.processFileSetArchetype(DefaultArchetypeGenerator.java:136) at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.generateArchetype(DefaultArchetypeGenerator.java:106) at org.apache.maven.archetype.generator.DefaultArchetypeGenerator.generateArchetype(DefaultArchetypeGenerator.java:149) at org.apache.maven.archetype.mojos.IntegrationTestMojo.processIntegrationTest(IntegrationTestMojo.java:276) at org.apache.maven.archetype.mojos.IntegrationTestMojo.execute(IntegrationTestMojo.java:129) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) 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:319) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 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:616) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 0.909s [INFO] Finished at: Thu Aug 25 23:58:33 CEST 2011 [INFO] Final Memory: 7M/150M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.1-SNAPSHOT:integration-test (default-integration-test) on project mvn-archetype-359-archetype: [ERROR] Archetype IT 'basic' failed: Missing required properties in archetype.properties: requiredPropertyWithoutDefaultValue [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

          People

          • Assignee:
            Herve Boutemy
            Reporter:
            Abhishek Sharma
          • Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: