continuum-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Venisse <emman...@venisse.net>
Subject Re: Multi module setup as in maven docu
Date Mon, 15 Oct 2007 12:15:03 GMT


Manuel.Renz@t-systems.com a écrit :
> Hi,
> in
> http://maven.apache.org/guides/introduction/introduction-to-the-pom.html
> #Example_4 there is an example for a multi module environment.
>  
> Namely Example 4
> I have a structure similar to  
> .
>  |-- my-module
>  |   `-- pom.xml
>  `-- parent
>      `-- pom.xml
> 
> In the Maven docu they say I just need to add follwoing to the
> parent/pom.xml
> 
> <project>
>   <parent>
>     <groupId>com.mycompany.app</groupId>
>     <artifactId>my-app</artifactId>
>     <version>1</version>
>     <relativePath>.../parent/pom.xml</relativePath>
>   </parent>
>   <modelVersion>4.0.0</modelVersion>
>   <artifactId>my-module</artifactId>
> </project>
> 
> I'm not sure if this works with continuum.
> First: is it their aim that there are three dots?

You can't use "..." in maven and/or Continuum. "..." mean that is a relative path that can
be ".." or "../../dir1/dir2/" or something.

> Second: Will this work, cause continuum has another directory structure
> with IDs in the path.
> For example:
> .
>  |-- 12
>  |    `-- my-module
>  |       `-- pom.xml
>  |-- 9
>      `-- parent
>          `-- pom.xml 
> 
> So I'm wondering if the relativePath notation works or if this only
> relates to the structure inside the SCM. Additionally, it's possible
> that the ids change, I simply do not want to hardcode the pathes.

Continuum use maven API to load projects so if you checkout your "my-module" project without
other parent/modules, you'll have the same result.
If maven don't find the parent pom with the relative path, it use the one it found in the
local/remote repo.

> 
> Nevertheless, I tried with the example 4 and I get a two-step continuum
> error:
> The first is an error
> ---------------------------------------
> 	org.codehaus.plexus.taskqueue.execution.TaskExecutionException:
> Error executing action 'update-project-from-working-directory'
> 		at
> org.apache.maven.continuum.buildcontroller.DefaultBuildController.perfor
> mAction(DefaultBuildController.java:443)
> 		at
> org.apache.maven.continuum.buildcontroller.DefaultBuildController.build(
> DefaultBuildController.java:148)
> 		at
> org.apache.maven.continuum.buildcontroller.BuildProjectTaskExecutor.exec
> uteTask(BuildProjectTaskExecutor.java:50)
> 		at
> org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$Execut
> orRunnable$1.run(ThreadedTaskQueueExecutor.java:116)
> 		at
> edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter
> .call(Executors.java:442)
> 		at
> edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask
> .java:176)
> 		at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker
> .runTask(ThreadPoolExecutor.java:665)
> 		at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker
> .run(ThreadPoolExecutor.java:690)
> 		at java.lang.Thread.run(Thread.java:619)
> 	Caused by:
> org.apache.maven.continuum.execution.ContinuumBuildExecutorException:
> Error while mapping metadata:add.project.validation.error
> 	add.project.project.building.error
> 	add.project.unknown.error

The error isn't well formatted but it's generally because Continuum/maven can load the project.
The parent or a dependency can't be loaded from the local/remote repository.

Emmanuel

> 	
> 		at
> org.apache.maven.continuum.execution.maven.m2.MavenTwoBuildExecutor.upda
> teProjectFromCheckOut(MavenTwoBuildExecutor.java:168)
> 		at
> org.apache.maven.continuum.core.action.UpdateProjectFromWorkingDirectory
> ContinuumAction.execute(UpdateProjectFromWorkingDirectoryContinuumAction
> .java:75)
> 		at
> org.apache.maven.continuum.buildcontroller.DefaultBuildController.perfor
> mAction(DefaultBuildController.java:417)
> 		... 8 more
> 
> ---------------------------------------
> The second is a failure:
> [INFO] Scanning for projects...
> [INFO]
> ------------------------------------------------------------------------
> ----
> [INFO] Building Maven Default Project
> [INFO]    task-segment: [clean, install]
> [INFO]
> ------------------------------------------------------------------------
> ----
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Cannot execute mojo: clean. It requires a project with an
> existing pom.xml, but the build is not using one.
> [INFO]
> ------------------------------------------------------------------------
> [INFO] For more information, run Maven with the -e switch
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: &lt; 1 second
> [INFO] Finished at: Mon Oct 15 11:52:36 CEST 2007
> [INFO] Final Memory: 1M/4M
> [INFO]
> ------------------------------------------------------------------------
> 
> 
> Greetings
> Manuel
> 
> 


Mime
View raw message