我正在创建一个 Sling servlet 需要使用 HBase 的 OSGi 包。我收到以下错误。我用谷歌搜索了这个,我发现的答案很模糊,其中一些是矛盾的。我在本地主机上运行 HBase 0.94.6,必要的 jar 是项目中的 Maven 依赖项。它们也包含在 EmbedDependency 标记中。我尝试在包的根目录中包含 hbase-default.xml(即在 src/main/resources 中),并且在 maven-bundle-plugin 的配置/异常标记中包含以下内容:
<Include-Resource>{maven-resources}</Include-Resource>
如果我理解正确,这应该会导致使用捆绑包构建文件,并且我可以在生成的 jar 文件中看到它。但是在部署捆绑包时,我仍然从 Felix 收到以下错误。有谁知道如何让这个消息消失?
java.lang.RuntimeException: hbase-default.xml file seems to be for and old version of HBase (null), this version is 0.94.6-cdh4.3.0
at org.apache.hadoop.hbase.HBaseConfiguration.checkDefaultsVersion(HBaseConfiguration.java:68)
at org.apache.hadoop.hbase.HBaseConfiguration.addHbaseResources(HBaseConfiguration.java:100)
at org.apache.hadoop.hbase.HBaseConfiguration.create(HBaseConfiguration.java:111)
at com.adobe.corona.repo.acquisition.TestServlet.activate(TestServlet.java:46)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)