dev@glassfish.java.net

Re: About a problem of HK2 building

From: Tang Yong <tangyong_at_cn.fujitsu.com>
Date: Wed, 10 Oct 2012 19:28:53 +0900

Hi Romain, HK2 building)Team,

  Normally, a user needs not to build a customized hk2
version(eg.1.1.15-gf-00007-SNAPSHOT), however, I have such a case.
According to hk2 1.x 's building script(eg. firstly "mvn -P
release-phase1 install"), auto-building failed, so this is my problem.

  Although I have interrupted team to see back hk2 1.x, I really wish
team can give me more advice.

Thanks again!
--Tang

Tang Yong wrote:
> 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
>>>>>
>>
>
>
>