You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Paul King (Jira)" <ji...@apache.org> on 2020/02/17 14:32:00 UTC

[jira] [Commented] (GROOVY-8666) groovy-all pom approach breaks OSGi due to split-packages

    [ https://issues.apache.org/jira/browse/GROOVY-8666?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17038404#comment-17038404 ] 

Paul King commented on GROOVY-8666:
-----------------------------------

Update: this fix was also added to the GROOVY_3_0_X branch (see GROOVY-9402).

> groovy-all pom approach breaks OSGi due to split-packages
> ---------------------------------------------------------
>
>                 Key: GROOVY-8666
>                 URL: https://issues.apache.org/jira/browse/GROOVY-8666
>             Project: Groovy
>          Issue Type: Bug
>          Components: release
>    Affects Versions: 2.5.0
>            Reporter: Josef Härtl
>            Assignee: Paul King
>            Priority: Critical
>             Fix For: 2.5.1
>
>
> The splitting of groovy into smaller causes another, very major, problem:
> First, consider the "main" groovy jar: It contains the package groovy.util with numerous classes.
> Secondly, consider the groovy-xml jar. It contains the package groovy.util and therein the classes XMLParser etc.
> Regardless whether you use OSGi (like in our case) or Java 9 (what we are migrating to): This presents a split-package itself: As we already reproduced in our build: Whatever jar of these is loaded first wins the groovy.util package and "overrides" the other.
> As a result, it's become random whether our users can use XMLParser or not. Sometimes it is found, sometimes it's not. I consider this a very major problem and a blocker as it makes execution unreliable and randomish. I did not check but somewhat guess that this is not the only collision of this sort.
> Therefore, the splitting of groovy 2.5 into smaller pieces introduced split-packages to itself. If one wants to split groovy, the split will have to follow package borders.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)