[hibernate-dev] hibernate-commons-annotations dependencies

Steve Ebersole steve at hibernate.org
Mon Oct 8 13:05:52 EDT 2012


That's not exactly how the deps work here.  It is in fact 
hibernate-core that introduces the dep on 
hibernate-commons-annotations, not hibernate-entitymanager.

On Mon 08 Oct 2012 11:33:40 AM CDT, Sanne Grinovero wrote:
> On 8 October 2012 15:44, Steve Ebersole <steve at hibernate.org> wrote:
>> Nothing Gradle specific here.  Not following why you say that.  He is
>> talking about projects including hibernate-entitymanager, which I assume is
>> using Maven since I believe every Hibernate sub-project is still using Maven
>> to build (correct me if I am wrong there).
>
> What Guillaume is suggesting is that the pom.xml of the
> hibernate-entitymanager should exclude one version, to expose only the
> correct one.
>
> I think this pom.xml is generated by Gradle since EntityManger is a
> submodule of the Hibernate ORM repository?
>
> Cheers,
> Sanne
>
>>
>> That said, this is in fact exactly what Maven does.  It just blindly
>> includes all versions.  At least thats what it did in Maven 2.  I have not
>> played much with Maven 3.  You project, the one including
>> hibernate-entitymanager, controls this through <dependencyManagement/> to
>> name the singularized version of a dependency to pull in even across
>> transitive deps.  Again, thats how it used to work in Maven 2, and I have
>> heard of no changes in that regard for Maven 3.
>>
>> On 10/08/2012 08:34 AM, Sanne Grinovero wrote:
>>>
>>> Hi Guillaume,
>>> I'll leave it to the gradle gurus on the team to say how to fix that,
>>> but I'm surprised that Maven suggests both dependencies, that should
>>> never be the case.
>>>
>>> As a workaround, if you define an explicit dependency on jboss-logging
>>> in your <dependencyManagement> section you should be able to avoid any
>>> ambiguity.
>>>
>>> I always specify dependency versions explicitly in this form (in our
>>> projects using Maven) so that might explain why we never noticed this
>>> problem.
>>>
>>> thanks,
>>> Sanne
>>>
>>>
>>> On 8 October 2012 13:49, Guillaume Smet <guillaume.smet at gmail.com> wrote:
>>>>
>>>> Hi,
>>>>
>>>> I don't know what is your policy about the dependency management but,
>>>> currently, when you include hibernate-entity-manager in the pom of an
>>>> application, it comes with dependencies to 3.1.0.Final and 3.1.0.CR2.
>>>>
>>>> The problem is that hibernate-commons-annotations-4.0.1.Final requires
>>>> 3.1.0.CR2 of jboss-logging. See:
>>>>
>>>> http://search.maven.org/remotecontent?filepath=org/hibernate/common/hibernate-commons-annotations/4.0.1.Final/hibernate-commons-annotations-4.0.1.Final.pom
>>>>
>>>> I was wondering if it was possible to add an exclusion to the
>>>> hibernate-entity-manager pom.xml (or the Gradle equivalent) to not
>>>> drag the jboss-logging dependency of hibernate-commons-annotations so
>>>> that from the outside the dependencies of hibernate-entity-manager are
>>>> clean.
>>>>
>>>> Thanks for your feedback.
>>>>
>>>> --
>>>> Guillaume
>>>> _______________________________________________
>>>> hibernate-dev mailing list
>>>> hibernate-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>>
>>> _______________________________________________
>>> hibernate-dev mailing list
>>> hibernate-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>
>>
>>
>> --
>> steve at hibernate.org
>> http://hibernate.org
>>

--
steve at hibernate.org
http://hibernate.org


More information about the hibernate-dev mailing list