Github user afs commented on the issue:

    https://github.com/apache/jena/pull/401
  
    What is the issue here? Does anything break?
    
    oaj = org.apache.jena
    
    > the module system does not allow two distinct modules (e.g. 
org.apache.jena.arq and org.apache.jena.base) to export the same package (e.g. 
org.apache.jena.atlas).
    
    jena-arq does not contain any classes of `oaj.atlas` so the package isn't 
split.
    
    jena-arq would  export the packages like `oaj.atlas.web` that it has but 
not `oaj.atlas` itself.
    
    jena-base would export `oaj.atlas`, and each subpackage by name. (No use of 
`*`)
    
    It is the same situation as jena-core having `org.apache.jena` and other 
jars having `oaj.query`etc.
    That is not a split package. 
    
    In an ideal world, the naming might be different but the question is what 
does the current situation break?
    
    The dependency is:
    {noformat}
    [INFO] org.apache.jena:jena-arq:jar:3.8.0-SNAPSHOT
    [INFO] +- org.apache.jena:jena-core:jar:3.8.0-SNAPSHOT:compile
    [INFO] |  \- org.apache.jena:jena-base:jar:3.8.0-SNAPSHOT:compile
    {noformat}
    
    > "org.apache.jena.atlas.json.io.parser"  | "org.apache.jena.riot.tokens 
(jena-arq-3.7.0.jar)";
    > Could this be changed?
    
    To what?
    
    They are both in jena-arq - I'm not seeing any problem with that. Are you 
suggesting better naming or because something breaks?
    
    (The name "atlas" is no more than a holder as a "lib".)
    
    Arguably, the JSON package should have a different hierarchical name but I 
agree with @ajs6f shuffling package names around impacts users heavily, and few 
use java9 yet. The end target naming isn't clear until the whole of Jena is 
considered.


---

Reply via email to