dev@glassfish.java.net

Re: v3-prelude-release branch build instructions after my check-in

From: Marina Vatkina <Marina.Vatkina_at_Sun.COM>
Date: Thu, 16 Oct 2008 20:48:57 -0700

It was you who told me that if I need just the results of the build, I can run
'mvn package' instead of 'mvn install' ;). (maven online docs seem to confirm
this :)). I didn't plan to use the packages, just verify that the pieces are
picked up correctly, so it seemed like a reasonable thing to do.

I did the experiment and changed 'jts' to depend on a temporary omgapi jar that
exist only in my local repo. 'mvn package' found the dependency without a problem.

In your example artifact b is built with 'mvn install' before trying to build
'a' with 'mvn package'

thanks,
-marina

Sahoo wrote:
> Write a small test case for the scenario I described and it will be
> clear. Can I ask why you are running install target for v3 and package
> target for packager? Who told you to do so?
>
> Marina Vatkina wrote:
>
>> No, it's not clear - I built v3 with 'clean install' then went to the
>> packager module (which is not built as part of v3, right?), and did
>> 'mvn clean package'. What does packager module depend on that
>> shouldn't work in this scenario?
>>
>> thanks,
>> -marina
>>
>> Sahoo wrote:
>>
>>> Think of it, you have artifact a that depends on artifact b. a & b
>>> are built in the same reactor build. For a to build, b must be
>>> available in your local maven repo. Either b comes from remote repo
>>> to local repo or from your build to local repo. If b is not available
>>> in remote repo, the only option you have is to populate the local
>>> repo running install target. Hope it is clear.
>>>
>>> Marina Vatkina wrote:
>>>
>>>> Hi Sahoo,
>>>>
>>>> Are you saying that the 'package' target can be called only after
>>>> all artifact had been published to the remote repo?
>>>>
>>>> I can't find anywhere any warnings that would explain why 'package'
>>>> would be the wrong target to call :(.
>>>>
>>>> thanks,
>>>> -marina
>>>>
>>>> Sahoo wrote:
>>>>
>>>>> Marina,
>>>>>
>>>>> OK, I see what is going on. Upon careful reading of your first
>>>>> email, I see that you are facing a different issue. You need to run
>>>>> "clean install" targets as opposed to "clean package."
>>>>>
>>>>> Thanks,
>>>>> Sahoo
>>>>>
>>>>> Marina Vatkina wrote:
>>>>>
>>>>>> Sahoo,
>>>>>>
>>>>>> I had your changes in the packager module :(.
>>>>>>
>>>>>> thanks,
>>>>>> -marina
>>>>>>
>>>>>> Sahoo wrote:
>>>>>>
>>>>>>> Snjezana,
>>>>>>>
>>>>>>> I actually put back a fix for packager module last night (see svn
>>>>>>> rev #23438). The same fix was required in installer and
>>>>>>> distributions-prelude module and I see you have already done it.
>>>>>>> Thanks for taking care of those two modules.
>>>>>>>
>>>>>>> Sahoo
>>>>>>>
>>>>>>> Snjezana Sevo-Zenzerovic wrote:
>>>>>>>
>>>>>>>> Marina,
>>>>>>>>
>>>>>>>> as the last line of Sahoo's checkin comment says, "I have not
>>>>>>>> tried to build packager module." :-)
>>>>>>>>
>>>>>>>> I think there are two separate issues here: first one is that
>>>>>>>> packager module does not build at all at this point since
>>>>>>>> maven-glassfish-extension is not defined as extension in
>>>>>>>> packager, distributions-prelude and installer modules. Second
>>>>>>>> issue is that because of that build failure, updated packager
>>>>>>>> zip file artifacts do not get published into maven repository
>>>>>>>> and that's direct cause of your problem.
>>>>>>>>
>>>>>>>> I'll try to update affected POMs as soon as possible and make
>>>>>>>> packager and other failing modules buildable...
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> Snjezana
>>>>>>>>
>>>>>>>> Marina Vatkina wrote:
>>>>>>>>
>>>>>>>>> Hi Sahoo,
>>>>>>>>>
>>>>>>>>> While I can successfully build v3_prelude_release following
>>>>>>>>> your instructions, building inside v3_prelude_release/packager
>>>>>>>>> - 'mvn -D<...> clean package' fails with the message below.
>>>>>>>>>
>>>>>>>>> thanks,
>>>>>>>>> -marina
>>>>>>>>>
>>>>>>>>> [INFO]
>>>>>>>>> ------------------------------------------------------------------------
>>>>>>>>>
>>>>>>>>> [ERROR] BUILD ERROR
>>>>>>>>> [INFO]
>>>>>>>>> ------------------------------------------------------------------------
>>>>>>>>>
>>>>>>>>> [INFO] Failed to resolve artifact.
>>>>>>>>>
>>>>>>>>> Missing:
>>>>>>>>> ----------
>>>>>>>>> 1) org.glassfish.packager:felix:zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> Try downloading the file manually from the project website.
>>>>>>>>>
>>>>>>>>> Then, install it using the command:
>>>>>>>>> mvn install:install-file -DgroupId=org.glassfish.packager
>>>>>>>>> -DartifactId=felix \
>>>>>>>>> -Dversion=3.0-Prelude-SNAPSHOT -Dpackaging=zip
>>>>>>>>> -Dfile=/path/to/file
>>>>>>>>> Alternatively, if you host your own repository you can deploy
>>>>>>>>> the file there: mvn deploy:deploy-file
>>>>>>>>> -DgroupId=org.glassfish.packager -DartifactId=felix \
>>>>>>>>> -Dversion=3.0-Prelude-SNAPSHOT -Dpackaging=zip
>>>>>>>>> -Dfile=/path/to/file \
>>>>>>>>> -Durl=[url] -DrepositoryId=[id]
>>>>>>>>>
>>>>>>>>> Path to dependency:
>>>>>>>>> 1)
>>>>>>>>> org.glassfish.packager:glassfish-api:distribution-base-zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> 2) org.glassfish.packager:felix:zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> 2) org.glassfish.packager:glassfish-hk2:zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> Try downloading the file manually from the project website.
>>>>>>>>>
>>>>>>>>> Then, install it using the command:
>>>>>>>>> mvn install:install-file -DgroupId=org.glassfish.packager
>>>>>>>>> -DartifactId=glassfish-hk2 \
>>>>>>>>> -Dversion=3.0-Prelude-SNAPSHOT -Dpackaging=zip
>>>>>>>>> -Dfile=/path/to/file
>>>>>>>>> Alternatively, if you host your own repository you can deploy
>>>>>>>>> the file there: mvn deploy:deploy-file
>>>>>>>>> -DgroupId=org.glassfish.packager -DartifactId=glassfish-hk2 \
>>>>>>>>> -Dversion=3.0-Prelude-SNAPSHOT -Dpackaging=zip
>>>>>>>>> -Dfile=/path/to/file \
>>>>>>>>> -Durl=[url] -DrepositoryId=[id]
>>>>>>>>>
>>>>>>>>> Path to dependency:
>>>>>>>>> 1)
>>>>>>>>> org.glassfish.packager:glassfish-api:distribution-base-zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> 2) org.glassfish.packager:glassfish-hk2:zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> 3)
>>>>>>>>> org.glassfish.packager:glassfish-grizzly:zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> Try downloading the file manually from the project website.
>>>>>>>>>
>>>>>>>>> Then, install it using the command:
>>>>>>>>> mvn install:install-file -DgroupId=org.glassfish.packager
>>>>>>>>> -DartifactId=glassfish-grizzly \
>>>>>>>>> -Dversion=3.0-Prelude-SNAPSHOT -Dpackaging=zip
>>>>>>>>> -Dfile=/path/to/file
>>>>>>>>> Alternatively, if you host your own repository you can deploy
>>>>>>>>> the file there: mvn deploy:deploy-file
>>>>>>>>> -DgroupId=org.glassfish.packager -DartifactId=glassfish-grizzly \
>>>>>>>>> -Dversion=3.0-Prelude-SNAPSHOT -Dpackaging=zip
>>>>>>>>> -Dfile=/path/to/file \
>>>>>>>>> -Durl=[url] -DrepositoryId=[id]
>>>>>>>>>
>>>>>>>>> Path to dependency:
>>>>>>>>> 1)
>>>>>>>>> org.glassfish.packager:glassfish-api:distribution-base-zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> 2)
>>>>>>>>> org.glassfish.packager:glassfish-grizzly:zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>> ----------
>>>>>>>>> 3 required artifacts are missing.
>>>>>>>>>
>>>>>>>>> for artifact:
>>>>>>>>> org.glassfish.packager:glassfish-api:distribution-base-zip:3.0-Prelude-SNAPSHOT
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> from the specified remote repositories:
>>>>>>>>> central (http://repo1.maven.org/maven2),
>>>>>>>>> maven2.java.net (http://download.java.net/maven/2),
>>>>>>>>> repo1.maven.org (http://repo1.maven.org/maven2),
>>>>>>>>> java-dev-repository
>>>>>>>>> (https://maven-repository.dev.java.net/nonav/repository),
>>>>>>>>> glassfish-repository (http://download.java.net/maven/glassfish),
>>>>>>>>> java.net (http://download.java.net/maven/1),
>>>>>>>>> maven2.java.net-backup
>>>>>>>>> (https://maven2-repository.dev.java.net/nonav/repository),
>>>>>>>>> glassfish-repository-wsinterop
>>>>>>>>> (http://maven.dyndns.org/glassfish/)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Sahoo wrote:
>>>>>>>>>
>>>>>>>>>> After my recent check in [1], when you update your workspace
>>>>>>>>>> and do a build, you are likely to see maven complaining about
>>>>>>>>>> missing artifact called
>>>>>>>>>> /org.glassfish.build:maven-glassfish-extension:jar:3.0-Prelude-SNAPSHOT./
>>>>>>>>>> To avoid this, run the following command:
>>>>>>>>>> 'mvn -Prelease-phase1 install' in your workspace.
>>>>>>>>>>
>>>>>>>>>> More about the problem and solution:
>>>>>>>>>> The reason for this error is obvious: build depends on an
>>>>>>>>>> artifact which is not available in remote repo. But, you may
>>>>>>>>>> have noticed that v3 build itself produces that artifact (see
>>>>>>>>>> build/maven-glassfish-extension/pom.xml). Why then maven
>>>>>>>>>> complains instead of building the artifact locally and using
>>>>>>>>>> the same like every other build dependency? Even though that
>>>>>>>>>> artifact is produced by v3 build, maven can't get there as it
>>>>>>>>>> is a build extension that maven needs to resolve at a very
>>>>>>>>>> early stage of release. So, we have introduced a separate
>>>>>>>>>> profile called /release-phase1/ which only builds this
>>>>>>>>>> artifact. To invoke maven in this profile, pass
>>>>>>>>>> -Prelease-phase1 in command line.
>>>>>>>>>>
>>>>>>>>>> We are asking RE to publish 3.0-Prelude-SNAPSHOT artifacts to
>>>>>>>>>> remote repo so that everyone does not run into this problem.
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> Sahoo
>>>>>>>>>>
>>>>>>>>>> [1]
>>>>>>>>>> http://fisheye4.atlassian.com/changelog/glassfish-svn/branches?cs=23437
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ------------------------------------------------------------------------
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Subject:
>>>>>>>>>> [GFv3] HEADS UP: version to be updated to 3.0-Prelude and 3.0
>>>>>>>>>> in branch and trunk resp.
>>>>>>>>>> From:
>>>>>>>>>> Sahoo <sahoo_at_Sun.COM>
>>>>>>>>>> Date:
>>>>>>>>>> Wed, 15 Oct 2008 20:10:32 +0530
>>>>>>>>>> To:
>>>>>>>>>> dev_at_glassfish.dev.java.net
>>>>>>>>>>
>>>>>>>>>> To:
>>>>>>>>>> dev_at_glassfish.dev.java.net
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> To avoid confusion, we have decided to use version numbers in
>>>>>>>>>> pom.xmls same as what release we are preparing. So, we will
>>>>>>>>>> set the version as 3.0-Prelude-SNAPSHOT in prelude branch and
>>>>>>>>>> 3.0-SNAPSHOT in trunk. When the final release is performed,
>>>>>>>>>> SNAPSHOT will be dropped. I am in the process of making the
>>>>>>>>>> change, so I request you not to make major changes to pom.xmls
>>>>>>>>>> at this point of time.
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> Sahoo
>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>
>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ------------------------------------------------------------------------
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>>
>>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>>
>>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>>
>>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>>
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>