[ 
https://issues.apache.org/jira/browse/HBASE-2170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12842258#action_12842258
 ] 

Lars Francke commented on HBASE-2170:
-------------------------------------

Now that we've moved to Maven I had a look at this. While it might be possible 
to build custom assemblies for the client it won't be easy to automate - I hope 
Kay Kay or Paul can comment on that as they have more experience with this

We're also looking at all the dependencies and marking them as "optional" if 
they are only needed for certain features (client, server, ...). But it's 
Mavens philosophy that an optional dependency is a sign for an "inefficient" 
build layout and that the project should be split into multiple modules.

I haven't taken a close look at this and I'm not very familiar with the HBase 
source code but it seems to me as if it would make sense to split the current 
"core" module in at least three parts: _common_, _client_ and _server_. This 
would allow us to bundle all those classes that are used by both components in 
the _common_ module which hopefully has none or very little external 
dependencies.

I know that this would mean yet another big change in the source code layout so 
take it at as a proposal for one possible solution to the problem. I've not 
been with the project for very long but I've seen questions about how to use 
HBase in Java multiple times. This would hopefully make this easier and clear 
it up a bit.

If you decide this is a good idea I'd be willing to spend some time on it.

> hbase lightweight client library as a distribution 
> ---------------------------------------------------
>
>                 Key: HBASE-2170
>                 URL: https://issues.apache.org/jira/browse/HBASE-2170
>             Project: Hadoop HBase
>          Issue Type: Wish
>            Reporter: Kay Kay
>
> As a wish - it would be nice to have a hbase client library (subset of the 
> current hbase distribution) that needs to be present at the hbase client 
> level to interact with the master/region servers. 
> From an app integration - users of hbase can just link against the client 
> library as opposed to getting the entire library to link against. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to