[
https://issues.apache.org/jira/browse/OAK-6304?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16047822#comment-16047822
]
Tomek Rękawek commented on OAK-6304:
------------------------------------
[~anchela] - in the Sling / OSGi setup it seems that the {{oak-auth-external}}
depends on the {{org.apache.jackrabbit.oak.query}} package, which is not
exported by {{oak-core}}. As a result, the bundle can't start.
The reason is that the {{ExternalIdentityRepositoryInitializer}} class uses
{{org.apache.jackrabbit.oak.plugins.tree.RootFactory#createSystemRoot}} method.
One parameter of this method is a
{{org.apache.jackrabbit.oak.query.QueryEngineSettings}}. Even though it's null,
the OSGi tries to import its package anyway.
> Cyclic dependency between oak.spi.query an oak.query.*
> ------------------------------------------------------
>
> Key: OAK-6304
> URL: https://issues.apache.org/jira/browse/OAK-6304
> Project: Jackrabbit Oak
> Issue Type: Task
> Components: core, indexing, query
> Reporter: angela
> Assignee: angela
> Fix For: 1.8, 1.7.2
>
> Attachments: OAK-6304-2.patch, OAK-6304-2-test.patch, OAK-6304.patch,
> OAK-6304-test.patch
>
>
> while working on OAK-6069 i noticed that there exist IMO troublesome
> dependencies from _o.a.j.oak.spi.query_ back to _o.a.j.oak.query.*_. While i
> don't know the historical reasons that led to this setup it feels wrong to me
> that the interfaces and classes in _o.a.j.oak.spi.query_ would have
> dependencies to packages that from my understanding are supposed to contain
> implementations.
> while utilities like {{o.a.j.oak.spi.query.Cursors}} may simply have ended up
> in the wrong bucket and could possibly moved to e.g _o.a.j.query.index_, i
> couldn't find an easy solution for an interface like
> {{o.a.j.oak.spi.query.Filter}} that defines methods returning
> {{o.a.j.query.fulltext.FullTextExpression}} and
> {{o.a.j.query.QueryEngineSettings}}, while at the same time being tied to the
> {{o.a.j.oak.spi.query.QueryIndex}} interface.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)