Hi Peter,

thanks for figuring this out. You are absolutely right IMO. Commons
should not have any dependencies and we should fix that. Could you
open a JIRA issue for that? We have to do some SVN cleanup anyway in
Stanbol and this should be one part of that.

Best,
 - Fabian

Am 27. März 2012 03:18 schrieb Peter Ansell <[email protected]>:
> Hi all,
>
> I am trying to compile the ontologymanager submodule of the stanbol
> source from trunk and there are some issues with circular dependencies
> between modules. Trying to compile ontologymanager shows that there
> are commons modules that are missing, which is to be expected.
> However, trying to compile commons, without compiling any other
> modules or using the complete reactor, shows that commons is not
> self-contained. It relies on enhancer-servicesapi among others.
>
> [ERROR] Failed to execute goal on project
> org.apache.stanbol.commons.web.base: Could not resolve dependencies
> for project 
> org.apache.stanbol:org.apache.stanbol.commons.web.base:bundle:0.9.0-incubating-SNAPSHOT:
> Could not find artifact
> org.apache.stanbol:org.apache.stanbol.enhancer.servicesapi:jar:0.9.0-incubating-SNAPSHOT
> in apache.snapshots (http://repository.apache.org/snapshots) -> [Help
> 1]
>
> However, trying to compile enhancer requires commons to be compiled
> previously to have access to commons-indexedgraph, which didn't seem
> to have been compiled before commons-webbase which failed.
>
> [ERROR] Failed to execute goal on project
> org.apache.stanbol.enhancer.servicesapi: Could not resolve
> dependencies for project
> org.apache.stanbol:org.apache.stanbol.enhancer.servicesapi:bundle:0.9.0-incubating-SNAPSHOT:
> Failure to find
> org.apache.stanbol:org.apache.stanbol.commons.indexedgraph:jar:0.9.0-incubating-SNAPSHOT
> in http://repository.apache.org/snapshots was cached in the local
> repository, resolution will not be reattempted until the update
> interval of apache.snapshots has elapsed or updates are forced ->
> [Help 1]
>
> Is it possible to rearrange the packages throughout stanbol so that
> commons does not have any dependencies on any non-commons modules so
> that commons can be compiled from scratch?
>
> The module order in the parent pom makes it naively look like commons
> could be self-sufficient:
>
>  <modules>
>    <module>parent</module>
>    <module>commons</module>
>    <module>data</module>
>    <module>frameworkfragment</module>
>
>    <module>enhancer/parent</module>
>    <module>enhancer/generic/servicesapi</module>
>    <module>enhancer/generic/chainmanager</module>
>    <module>enhancer/generic/enginemanager</module>
>    <module>enhancer/jobmanager</module>
>    <module>enhancer/chain/allactive</module>
>    <module>enhancer/chain/graph</module>
>    <module>enhancer/chain/weighted</module>
>    <module>enhancer/chain/list</module>
>    <module>enhancer/jersey</module>
>    <module>enhancer/ldpath</module>
>    <module>enhancer/benchmark</module>
>    <module>enhancer/defaults</module>
>    <module>enhancer/bundlelist</module>
>
>    <module>cmsadapter</module>
>    <module>contenthub</module>
>    <module>entityhub</module>
>    <module>factstore</module>
>
> <module>ontologymanager</module>
>    <module>rules</module>
>    <module>reasoners</module>
>  </modules>
>
> However, the reactor build order that is automatically generated by
> maven shows that this isn't the only case where commons has
> dependencies on other packages, as the commons reactor doesn't appear
> in the list until after the enhancer parent pom, data parent pom,
> entityhub parent pom, and contenthub parent pom which seems to
> indicate that modules in each of those meta-modules are dependencies
> of the commons meta-module.
>
> [INFO] Reactor Build Order:
> [INFO]
> [INFO] Apache Stanbol Parent POM
> [INFO] Apache Stanbol JSON-LD API
> [INFO] Apache Stanbol Commons Jobs API
> [INFO] Apache Stanbol Commons Indexed Clerezza inMemory graph implementation
> [INFO] Apache Stanbol Enhancer Parent POM
> [INFO] Apache Stanbol Enhancer Services API
> [INFO] Apache Stanbol Commons Web Base
> [INFO] Apache Stanbol Commons Jobs Web
> [INFO] Apache Stanbol Commons Jobs Reactor
> [INFO] Apache Stanbol Data File Provider
> [INFO] Apache Stanbol Data parent POM
> [INFO] Apache Stanbol Data: OpenNLP Models for English
> [INFO] Apache Stanbol Commons: Open NLP and Models
> [INFO] Apache Stanbol Commons Web Home Page
> [INFO] Apache Stanbol Entityhub parent POM
> [INFO] Apache Stanbol Entityhub Services API
> [INFO] Apache Stanbol Contenthub parent POM
> [INFO] Apache Stanbol Contenthub API Bundle
> [INFO] Apache Stanbol Commons Web SPARQL
> [INFO] Apache Stanbol Jar Executor
> [INFO] Apache Stanbol Jar Http Testing Library
> [INFO] Apache Stanbol Testing Utilities
> [INFO] Apache Stanbol Offline Utilities
> [INFO] Apache Stanbol Data File Provider for Bundles
> [INFO] Apache Stanbol Bundle Provider
> [INFO] Apache Stanbol Commons Solr Core
> [INFO] Apache Stanbol Commons Solr Web
> [INFO] Apache Stanbol Commons Solr Managed
> [INFO] Apache Stanbol Commons Solr Installer
> [INFO] Apache Stanbol Commons Solr Defauts
> [INFO] Apache Stanbol OWL libraries
> [INFO] Apache Stanbol Commons Clerezza LDPath Repository
> [INFO] Apache Stanbol Http Query Headers
> [INFO] Apache Stanbol Commons Reactor
> [INFO] Apache Stanbol Default Configuration
> [INFO] Apache Stanbol Data: DBpedia.org
> [INFO] Apache Stanbol Data: OpenNLP NER Models for English
> [INFO] Apache Stanbol Data: Default ontology registries
> [INFO] Apache Stanbol Data: Default Data Bundle List
> [INFO] Apache Stanbol Data: Remote DBpedia.org with local cache
> [INFO] Apache Stanbol Data: OpenNLP Models for Danish
> [INFO] Apache Stanbol Data: OpenNLP Models for German
> [INFO] Apache Stanbol Data: OpenNLP Models for Dutch
> [INFO] Apache Stanbol Data: OpenNLP Models for Portuguese
> [INFO] Apache Stanbol Data: OpenNLP Models for Swedish
> [INFO] Apache Stanbol Data: OpenNLP NER Models for Spanish
> [INFO] Apache Stanbol Data: OpenNLP NER Models for Dutch
> [INFO] Apache Stanbol Data: Bundle List for OpenNLP
> [INFO] Apache Stanbol Data reactor
> [INFO] Apache Stanbol Default Framework Fragment Bundle
> [INFO] Apache Stanbol Enhancer Chain Manager
> [INFO] Apache Stanbol Enhancer Engine Manager
> [INFO] Apache Stanbol Enhancer Weighted Job Manager
> [INFO] Apache Stanbol Enhancer Event Jobmanager
> [INFO] Apache Stanbol Enhancer JobManager Reactor
> [INFO] Apache Stanbol Enhancer Chain: DefaultChain
> [INFO] Apache Stanbol Enhancer Chain: GraphChain
> [INFO] Apache Stanbol Enhancer Chain: Weighted
> [INFO] Apache Stanbol Enhancer Chain: List
> [INFO] Apache Stanbol Enhancer Jersey JAX-RS API and front-end
> [INFO] Apache Stanbol Enhancer ldpath
> [INFO] Apache Stanbol Enhancer Benchmark
> [INFO] Apache Stanbol Enhancer default configuration
> [INFO] Apache Stanbol Enhancer Bundle List
> [INFO] Apache Stanbol CMS Adapter parent POM
> [INFO] Apache Stanbol CMS adapter API bundle
> [INFO] Apache Stanbol CMS Adapter Core Bundle
> [INFO] Apache Stanbol CMS Adapter JCR Bundle
> [INFO] Apache Stanbol CMS Adapter CMIS Bundle
> [INFO] Apache Stanbol CMS Adapter Web Bundle
> [INFO] Apache Stanbol CMS Adapter Bundle List
> [INFO] Apache Stanbol CMS Adapter Reactor
> [INFO] Apache Stanbol Contenthub Solr Store
> [INFO] Apache Stanbol Contenthub Clerezza Store Implementation
> [INFO] Apache Stanbol Contenthub InMemory Store Implementation
> [INFO] Apache Stanbol Contenthub Store Reactor
> [INFO] Apache Stanbol Search Solr Searcher
> [INFO] Apache Stanbol Entityhub - Test Framework
> [INFO] Apache Stanbol Entityhub Core
> [INFO] Apache Stanbol Entityhub Model implementation based on RDF
> (using Clerezza)
> [INFO] Apache Stanbol Search Related Keyword Searcher
> [INFO] Apache Stanbol Featured Search
> [INFO] Apache Stanbol Search Reactor
> [INFO] Apache Stanbol Content Hub JAX-RS API
> [INFO] Apache Stanbol Contenthub Bundle List
> [INFO] Apache Stanbol Entityhub Yard implementation hased on Solr
> [INFO] Apache Stanbol Entityhub LDPath implementation
> [INFO] Apache Stanbol Contenthub Clerezza LDPath Backend Implementation
> [INFO] Apache Stanbol Contenthub Reactor
> [INFO] Apache Stanbol Entityhub Query implementation hased on SPARQL
> [INFO] Apache Stanbol Entityhub Linked Data Protocol Implementation
> [INFO] Apache Stanbol Entityhub Yard implementation hased on Clerezza
> [INFO] Apache Stanbol Entityhub HTTP Endpoint
> [INFO] Apache Stanbol Entityhub Indexingparent POM
> [INFO] Apache Stanbol Entityhub Indexing Core
> [INFO] Apache Stanbol Entityhub IndexingSource for RDF using Jena TDB
> [INFO] Apache Stanbol Entityhub IndexingSource for vCard
> [INFO] Apache Stanbol Entityhub Indexing SolrYard destination
> [INFO] Apache Stanbol Entityhub Indexing - generic configuration for
> RDF indexing
> [INFO] Apache Stanbol Entityhub Indexing for geonames.org
> [INFO] Apache Stanbol Entityhub Indexing for DBpedia.org
> [INFO] Apache Stanbol Entityhub Indexing for dblp
> [INFO] Apache Stanbol Entityhub Indexing reactor
> [INFO] Apache Stanbol Entityhub default configuration
> [INFO] Apache Stanbol Entityhub Bundle List
> [INFO] Apache Stanbol Entityhub reactor
> [INFO] Apache Stanbol FactStore
> [INFO] Apache Stanbol FactStore Bundle List
> [INFO] Apache Stanbol FactStore Reactor
> [INFO] Apache Stanbol Ontology Network Manager
> [INFO] Apache Stanbol Ontology Registry Manager
> [INFO] Apache Stanbol OntoNet Web Home
> [INFO] Apache Stanbol Ontology Manager Bundle List
> [INFO] Apache Stanbol Ontology Manager reactor
> [INFO] Apache Stanbol Rules Services API
> [INFO] Apache Stanbol Rules Manager
> [INFO] Apache Stanbol Rules Refactorer
> [INFO] Apache Stanbol Rules Web Home
> [INFO] Apache Stanbol Rules Bundle List
> [INFO] Apache Stanbol Rules reactor
> [INFO] Apache Stanbol Reasoners Services API
> [INFO] Apache Stanbol Reasoners Service Manager
> [INFO] Apache Stanbol Reasoners OWL API
> [INFO] Apache Stanbol Reasoners Jena
> [INFO] Apache Stanbol Reasoners Test Framework
> [INFO] Apache Stanbol Reasoners Web
> [INFO] Apache Stanbol Reasoners Bundle List
> [INFO] Apache Stanbol Reasoners Reactor
> [INFO] Apache Stanbol Commons Web Content Editable Enhancer UI
> [INFO] Apache Stanbol Enhancer Enhancement Engine : Semantic NER
> [INFO] Apache Stanbol Enhancer Enhancement Engine : Language Identifier
> [INFO] Apache Stanbol Enhancer Enhancement Engine : Topic Classification
> [INFO] Apache Stanbol Enhancer Enhancement Engine : Metaxa Metadata
> and Text Extractor
> [INFO] Apache Stanbol Enhancer Enhancement Engine : Apache Tika
> [INFO] Apache Stanbol Enhancer Enhancement Engine : geonames.org GIS service
> [INFO] Apache Stanbol Enhancer Enhancement Engine : for Entityhub
> ReferencedSites
> [INFO] Apache Stanbol Enhancer Enhancement Engine and utilities for
> extracting keywords form parsed text.
> [INFO] Apache Stanbol Enhancer Enhancement Engine : Refactoring service
> [INFO] Apache Stanbol Enhancer Enhancement Engine : OpenCalais
> [INFO] Apache Stanbol Enhancer Enhancement Engine : Zemanta Tagging
> [INFO] Apache Stanbol Enhancer Engines Reactor
> [INFO] Apache Stanbol OSGi Framework Bundle List
> [INFO] Apache Stanbol Commons Bundle List
> [INFO] Apache Stanbol Launcher - Stable
> [INFO] Apache Stanbol Launcher - Stateless
> [INFO] Apache Stanbol Launcher - Full
> [INFO] Apache Stanbol Launcher - Full WAR
> [INFO] Apache Stanbol Integration Tests
> [INFO] Apache Stanbol Reactor
>
> Of course, this will not stop a normal reactor as maven reorganises
> all of the modules to fit even if the pom.xml module order is not
> consistent with reality. It would be nice to be able to do quick
> compiles of stanbol without having to pick and choose manually the
> bits that are required by each package. In my case I would like to
> experiment with the raw ontologymanager part independent of all of the
> value added (slow to compile) parts like the enhancer, rules, and
> entityhub.
>
> Cheers,
>
> Peter



-- 
Fabian
http://twitter.com/fctwitt

Reply via email to