Do the <parent> elements have relativePath elements? Are they correct?
On Tue, Oct 19, 2010 at 7:20 PM, Robert Matthews <[email protected]> wrote: > After some more investigation things get a litter clearer, and little more > odd. > > When I run the compile goal (mvn compile) with the unchange code (ie after a > checkout) it run compiler:compile and compiler:testCompile. > > When I run the compile phase (mvn compile) after removing the parent pom > reference then it only run compiler:compile. This compile completes > successfully. That is, it is able to satisfy its dependencies by using the > code of the other just-compiled modules. > > The initial compile fails because the during the compile it doesn't make use > of the previously compile test modules, but it does for the main source. > > So there are two questions: 1) why does the compile goal in first instance > cause the the compiles, while the in the second only one is performed (both > should cause both compiles to occur); and 2) during the compiling of all the > code is Maven able to resolve the dependencies of the main code but not of > the test code. > > I think I will post to the Maven mailing list as see if they have an answer. > > Now that I understand what is happening, I can continue to look at the > problems I wanted to look at originally, such a basic failure, that of the > code not compiling, left me a little concerned. > > Regards > Rob > > > On 19/10/10 23:26, Mark Struberg wrote: >> >> you need to run >> >> $> mvn clean install >> >> otherwise your artifacts wont get installed to your local repo in >> ~/.m2/repository/... >> >> LieGrue, >> strub >> >> --- On Tue, 10/19/10, Benson Margulies<[email protected]> wrote: >> >> >>> >>> From: Benson Margulies<[email protected]> >>> Subject: Re: Snapshots >>> To: [email protected], [email protected] >>> Date: Tuesday, October 19, 2010, 9:34 PM >>> >>>> >>>> ~~~ >>>> Actually, I think I've just noticed your problem: mvn >>>> >>> >>> compile isn't >>> >>>> >>>> sufficient, is it? You need to do a full mvn install >>>> >>> >>> to get the preceeding >>> >>>> >>>> modules into the local repo, otherwise subsequent >>>> >>> >>> dependent modules won't >>> >>>> >>>> find them. I've just confirmed this. >>>> >>> >>> I was just reading the contrary on the maven-users list. >>> Things in the >>> reactor should work even if not installed. >>> >>> >>> >>>> >>>> Dan >>>> >>>> PS: I don't think this is related, but I *did* hit an >>>> >>> >>> issue of my own in the >>> >>>> >>>> pom.xml of the nosql object store, either the >>>> >>> >>> maven-assembly-plugin or >>> >>>> >>>> maven-antrun-plugin was causing the build to trip up >>>> >>> >>> and seemingly restart >>> >>>> >>>> in the incorrect place. No idea why, so have >>>> >>> >>> commented out. I guess at >>> >>>> >>>> some point it'll need looking at more closely, but >>>> >>> >>> since this module is >>> >>>> >>>> still in dev, I figured I wasn't breaking anything >>>> >>> >>> that was formally >>> >>>> >>>> released yet. >>>> >>>> >>>> ~~~~~~~~~~~ >>>> On 19/10/2010 00:47, Robert Matthews wrote: >>>> >>>>> >>>>> I've hit a similar issue to Kevin. Starting with >>>>> >>> >>> a clean repo (rm -r >>> >>>>> >>>>> .m2/repository/org/isis) I am struggling to build >>>>> >>> >>> a freshly checked out copy >>> >>>>> >>>>> of the code. Running mvn compile on the trunk >>>>> >>> >>> fails in the metamodel >>> >>>>> >>>>> project complaining about a missing library (which >>>>> >>> >>> is defined a few modules >>> >>>>> >>>>> earlier) - see below. >>>>> >>>>> If I comment out the parent in the trunk's pom.xml >>>>> >>> >>> everything is fine. >>> >>>>> >>>>> The same happens when running eclipse:eclipse. >>>>> >>> >>> The effective pom now >>> >>>>> >>>>> shows: >>>>> >>>>> <repositories> >>>>> <repository> >>>>> <snapshots> >>>>> <enabled>false</enabled> >>>>> </snapshots> >>>>> <id>central</id> >>>>> <name>Maven Repository >>>>> >>> >>> Switchboard</name> >>> >>>>> >>>>> <url>http://repo1.maven.org/maven2</url> >>>>> </repository> >>>>> </repositories> >>>>> >>>>> The odd thing is that with the parent commented >>>>> >>> >>> back in the effective pom >>> >>>>> >>>>> is: >>>>> >>>>> <repositories> >>>>> <repository> >>>>> <releases> >>>>> <enabled>false</enabled> >>>>> </releases> >>>>> <id>apache.snapshots</id> >>>>> <name>Apache Snapshot >>>>> >>> >>> Repository</name> >>> >>>>> >>>>> <url>http://repository.apache.org/snapshots</url> >>>>> </repository> >>>>> <repository> >>>>> <snapshots> >>>>> <enabled>false</enabled> >>>>> </snapshots> >>>>> <id>central</id> >>>>> <name>Maven Repository >>>>> >>> >>> Switchboard</name> >>> >>>>> >>>>> <url>http://repo1.maven.org/maven2</url> >>>>> </repository> >>>>> </repositories> >>>>> >>>>> which makes no sense to me, suggesting that >>>>> >>> >>> snapshots are not enabled. >>> >>>>> >>>>> I tried the suggestion made in this posting >>>>> >>>>> http://maven.markmail.org/message/us7cac3hz33ru2xw?q=snapshot+type:users+list:org%2Eapache%2Emaven%2Eusers&page=1, >>>>> but it did not change my effective pom. Maybe >>>>> >>> >>> you can try this Kevin to see >>> >>>>> >>>>> if works for you. >>>>> >>>>> I shall try some other things tomorrow, but if >>>>> >>> >>> anybody has any ideas in >>> >>>>> >>>>> the meantime I'd be happy to hear them. >>>>> >>>>> Rob >>>>> >>>>> >>>>> >>> >>> -------------------------------------------------------- >>> >>>>> >>>>> >>>>> >>>>> [INFO] >>>>> >>>>> >>> >>> ------------------------------------------------------------------------ >>> >>>>> >>>>> [INFO] Building Core MetaModel >>>>> [INFO] task-segment: [compile] >>>>> [INFO] >>>>> >>>>> >>> >>> ------------------------------------------------------------------------ >>> >>>>> >>>>> [INFO] [remote-resources:process {execution: >>>>> >>> >>> default}] >>> >>>>> >>>>> Downloading: >>>>> >>>>> http://repository.apache.org/snapshots/org/apache/isis/core/commons/0.1-SNAPSHOT/commons-0.1-SNAPSHOT-tests.jar >>>>> Downloading: >>>>> >>>>> http://repository.apache.org/snapshots/org/apache/isis/applib/0.1-SNAPSHOT/applib-0.1-SNAPSHOT-tests.jar >>>>> [INFO] Unable to find resource >>>>> >>>>> >>> >>> 'org.apache.isis:applib:test-jar:tests:0.1-SNAPSHOT' in >>> repository >>> >>>>> >>>>> apache.snapshots (http://repository.apache.org/snapshots) >>>>> [INFO] Unable to find resource >>>>> >>>>> >>> >>> 'org.apache.isis.core:commons:test-jar:tests:0.1-SNAPSHOT' >>> in repository >>> >>>>> >>>>> apache.snapshots (http://repository.apache.org/snapshots) >>>>> [INFO] >>>>> >>>>> >>> >>> ------------------------------------------------------------------------ >>> >>>>> >>>>> [ERROR] BUILD ERROR >>>>> [INFO] >>>>> >>>>> >>> >>> ------------------------------------------------------------------------ >>> >>>>> >>>>> [INFO] Failed to resolve dependencies for one or >>>>> >>> >>> more projects in the >>> >>>>> >>>>> reactor. Reason: Missing: >>>>> ---------- >>>>> 1) >>>>> >>> >>> org.apache.isis:applib:test-jar:tests:0.1-SNAPSHOT >>> >>>>> >>>>> Try downloading the file manually from the >>>>> >>> >>> project website. >>> >>>>> >>>>> Then, install it using the command: >>>>> mvn install:install-file >>>>> >>> >>> -DgroupId=org.apache.isis >>> >>>>> >>>>> -DartifactId=applib -Dversion=0.1-SNAPSHOT >>>>> >>> >>> -Dclassifier=tests >>> >>>>> >>>>> -Dpackaging=test-jar -Dfile=/path/to/file >>>>> >>>>> Alternatively, if you host your own repository >>>>> >>> >>> you can deploy the file >>> >>>>> >>>>> there: >>>>> mvn deploy:deploy-file >>>>> >>> >>> -DgroupId=org.apache.isis -DartifactId=applib >>> >>>>> >>>>> -Dversion=0.1-SNAPSHOT -Dclassifier=tests >>>>> >>> >>> -Dpackaging=test-jar >>> >>>>> >>>>> -Dfile=/path/to/file -Durl=[url] >>>>> >>> >>> -DrepositoryId=[id] >>> >>>>> >>>>> Path to dependency: >>>>> 1) >>>>> >>> >>> org.apache.isis.core:metamodel:jar:0.1-SNAPSHOT >>> >>>>> >>>>> 2) >>>>> >>> >>> org.apache.isis:applib:test-jar:tests:0.1-SNAPSHOT >>> >>>>> >>>>> 2) >>>>> >>> >>> org.apache.isis.core:commons:test-jar:tests:0.1-SNAPSHOT >>> >>>>> >>>>> Try downloading the file manually from the >>>>> >>> >>> project website. >>> >>>>> >>>>> Then, install it using the command: >>>>> mvn install:install-file >>>>> >>> >>> -DgroupId=org.apache.isis.core >>> >>>>> >>>>> -DartifactId=commons -Dversion=0.1-SNAPSHOT >>>>> >>> >>> -Dclassifier=tests >>> >>>>> >>>>> -Dpackaging=test-jar -Dfile=/path/to/file >>>>> >>>>> Alternatively, if you host your own repository >>>>> >>> >>> you can deploy the file >>> >>>>> >>>>> there: >>>>> mvn deploy:deploy-file >>>>> >>> >>> -DgroupId=org.apache.isis.core >>> >>>>> >>>>> -DartifactId=commons -Dversion=0.1-SNAPSHOT >>>>> >>> >>> -Dclassifier=tests >>> >>>>> >>>>> -Dpackaging=test-jar -Dfile=/path/to/file >>>>> >>> >>> -Durl=[url] -DrepositoryId=[id] >>> >>>>> >>>>> Path to dependency: >>>>> 1) >>>>> >>> >>> org.apache.isis.core:metamodel:jar:0.1-SNAPSHOT >>> >>>>> >>>>> 2) >>>>> >>> >>> org.apache.isis.core:commons:test-jar:tests:0.1-SNAPSHOT >>> >>>>> >>>>> ---------- >>>>> 2 required artifacts are missing. >>>>> >>>>> for artifact: >>>>> org.apache.isis.core:metamodel:jar:0.1-SNAPSHOT >>>>> >>>>> from the specified remote repositories: >>>>> apache.snapshots (http://repository.apache.org/snapshots), >>>>> central (http://repo1.maven.org/maven2) >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>> >>> >> >> >> > >
