dev@glassfish.java.net

Re: About a problem of HK2 building

From: Tang Yong <tangyong_at_cn.fujitsu.com>
Date: Tue, 09 Oct 2012 20:20:22 +0900

Hi Romain,

> Since hk2 1.1.15 still references maven.glassfish.org, this workaround
> is necessary if behind some proxy (depending on the proxy, maven will
> save html files as artifacts and it will corrupt your local repository).

I can understand the point because I have checked my env and set the proxy.

>>>> [Problem]
>>>> After I checked out hk2 1.1.15[1], I plan to release a new hk2
>>>> version(1.1.15-gf-00007-SNAPSHOT) based 1.1.15. Then, I made the
>>>> following modification.
>>>>
>>>> 1) modify <version> in hk2-parent pom into 1.1.15-gf-00007-SNAPSHOT
>>>> 2) modify <parent><version> in hk2-related modules into
>>>> 1.1.15-gf-00007-SNAPSHOT
>>>>
>>>> Then, I start to execute the following command:
>>>>
>>>> mvn -P release-phase1 install
The above is my real problem, and kernel of the problem is that I want
to release a new hk2 version(1.1.15-gf-00007-SNAPSHOT) based 1.1.15. I
can build hk2 1.1.15 successfully, however, after I made the above
modifications, building failed.

Thanks!
--Tang

Romain Grecourt wrote:
> On 10/09/2012 11:53 AM, Tang Yong wrote:
>> Hi Romain,
>>
>> Thanks your quick reply!
>>
>> > Which mvn version are you using ?
>> maven 3.0.4
>> jdk 1.6.0_34
>>
>> > Are you using the following workaround ?
>>> https://wikis.oracle.com/display/GlassFish/FullBuildInstructions#FullBuildInstructions-Settings.xml
>> Romain, this is to gf trunk , what I built is HK2. I can build gf's
>> building successfully.
> Since hk2 1.1.15 still references maven.glassfish.org, this workaround
> is necessary if behind some proxy (depending on the proxy, maven will
> save html files as artifacts and it will corrupt your local repository).
>
> Thanks,
> Romain
>> Thanks!
>> --Tang
>>
>> Romain Grecourt wrote:
>>> Hi Tang,
>>>
>>> Which mvn version are you using ?
>>> Are you using the following workaround ?
>>> https://wikis.oracle.com/display/GlassFish/FullBuildInstructions#FullBuildInstructions-Settings.xml
>>>
>>> Please, see my comments inline.
>>>
>>> On 10/09/2012 10:22 AM, Tang Yong wrote:
>>>> Hi HK2)Team
>>>> CC: Sahoo
>>>>
>>>> Today, I met a hk2 1.1.15(hk2 earlier version) building problem and
>>>> want to ask a right solution.
>>>>
>>>> [Problem]
>>>> After I checked out hk2 1.1.15[1], I plan to release a new hk2
>>>> version(1.1.15-gf-00007-SNAPSHOT) based 1.1.15. Then, I made the
>>>> following modification.
>>>>
>>>> 1) modify <version> in hk2-parent pom into 1.1.15-gf-00007-SNAPSHOT
>>>> 2) modify <parent><version> in hk2-related modules into
>>>> 1.1.15-gf-00007-SNAPSHOT
>>>>
>>>> Then, I start to execute the following command:
>>>>
>>>> mvn -P release-phase1 install
>>>>
>>>> However, the following execption happened on cmd shell,
>>>> ...
>>>> [INFO] --- maven-enforcer-plugin:1.0:enforce (enforce-maven) @ external ---
>>>> [INFO] Forking Inversion of Control / Autodependency mechanism
>>>> 1.1.15-gf-00007-SNAPSHOT
>>>> ...
>>>> [INFO] Reactor Summary:
>>>> [INFO]
>>>> [INFO] Modules Subsystem ................................. SUCCESS [1.234s]
>>>> [INFO] Class Model for Hk2 ............................... FAILURE [34.422s]
>>>> ...
>>>> [ERROR] Failed to execute goal on project auto-depends: Could not
>>>> resolve dependencies for project
>>>> org.glassfish.hk2:auto-depends:jar:1.1.15-gf-00007-SNAPSHOT: Could not
>>>> find artifact
>>>> org.glassfish.hk2.external:asm-all-repackaged:jar:1.1.15-gf-00007-SNAPSHOT
>>>> ...
>>>>
>>>> [My Trying]
>>>> After seeing the above exception, I checked my maven local repo and have
>>>> not found class-model-1.1.15-gf-00007-SNAPSHOT.jar on there although
>>>> seeing from class-model's pom, class-model does not depend on
>>>> auto-depends and asm-all-repackaged.
>>> 1)
>>> It says "Failed to execute goal on project auto-depends" and the reactor
>>> summary says that there is a failure in class-model. Class-model does
>>> not depend on auto-depends!
>>>
>>> 2)
>>> The failure you reported is actually related to auto-depends which
>>> depends on asm-all-repackaged:
>>> /
>>> [INFO] [dependency:tree {execution: default-cli}]
>>> [INFO] org.glassfish.hk2:auto-depends:jar:1.1.15
>>> [INFO] +- org.jvnet:tiger-types:jar:1.2:compile
>>> [INFO] +- org.glassfish.hk2:class-model:jar:1.1.15:compile
>>> [INFO] | \- (junit:junit:jar:4.3.1:compile - omitted for duplicate)
>>> [INFO] +- junit:junit:jar:4.3.1:provided (scope not updated to compile)
>>> [INFO] \- org.glassfish.hk2.external:asm-all-repackaged:jar:1.1.15:compile/
>>>
>>> 3)
>>> Why do you have version=1.1.15-gf-000007-SNAPSHOT if you are trying to
>>> build a tag ?
>>> I'm almost sure all of this is related to the version updates you did
>>> locally.
>>>
>>> If you want to work on the 1.1.x branch, here is the SVN URL:
>>>
>>> > https://svn.java.net/svn/hk2~svn/branches/hk2-parent-1.1.x
>>>> Then, I tried to adjust building order in hk2-parent pom and put
>>>> <module>external</module> before <module>class-model</module>, but the
>>>> similar problem still happened.
>>> The module order in the pom.xml does not really matter, maven figures
>>> the reactor and the build order on its own.
>>>> Then, I tried to build the external module and other related modules
>>>> manually once simlar problems happened. As a result, anything is OK.
>>>> Then, I start to execute "mvn -P release-phase1 install" and this time,
>>>> executing is OK.
>>>>
>>>> [My Analyse]
>>>> 1) Before HK2 releases a hk2 version and source, whether team has
>>>> uploaded built jars of the version into remote maven repository in order
>>>> to make user can download these jars while executing "mvn -P
>>>> release-phase1 install" or not?
>>> No, the hk2 1.x build is split in two phases because it contains maven
>>> plugins that are also used during the build.
>>> -Prelease-phase1 builds the 1st phase which contains the maven plugins.
>>>> 2) Maybe my modification way is not right at all.
>>>>
>>>> [Request]
>>>> Could team please tell me a right doing way?
>>> I was not able to reproduce your issue.
>>> I've able to build the tag using mvn 2.2.1 and 3.0.3 (removing
>>> org/glassfish/hk2 from my local repo each time).
>>>
>>> Thanks,
>>> Romain
>>>> [1]: https://svn.java.net/svn/hk2~svn/tags/hk2-parent-1.1.15
>>>>
>>>> Thanks
>>>> --Tang
>>>>
>
>