相关疑难解决方法(0)

Gradle:按版本分类器覆盖传递依赖项

在我的项目中声明的依赖项之一具有传递依赖性'com.google.guava:guava:15.0'.但是我在WAS/Weblogic上部署的应用程序由于已修复的CDI问题而无效'com.google.guava:guava:15.0:cdi1.0'.(相同版本,但有分类器)我需要告诉gradle在构建和打包过程中使用这个jar.我试图弄清楚如何使用jar特定的版本分类器来提取这种传递依赖.

试过以下方法:

  1. 明确添加了依赖项:compile 'com.google.guava:guava:15.0:cdi1.0'.但两个罐子都包含在最终的WAR中.
  2. 明确添加了依赖关系并定义了解决策略:

    configurations.all {
        resolutionStrategy {
            force 'com.google.guava:guava:15.0:cdi1.0'
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)

    即使这样也行不通.

  3. 定义了检查和更改版本的解决方案策略.

    configurations.all {
         resolutionStrategy.eachDependency { DependencyResolveDetails details ->
             if (details.requested.group + ":" + details.requested.name == 'com.google.guava:guava') {
                details.useVersion "15.0:cdi1.0"
                //details.useTarget "com.google.guava:guava:15.0:cdi1.0"
            }
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)

    即使这样也行不通.

需要您就如何解决此问题提出建议.

java dependency-management gradle maven guava

44
推荐指数
4
解决办法
3万
查看次数

使用JanusGraph Java API和HBase时出现TemporaryBackendException

我使用的是JanusGraph Java API,HBase作为存储后端

我必须提到的一件事是我可以在JanusGraph shell中成功运行相同的命令, gremlin.sh

错误之前的日志如下,这在图形实例打开期间发生, JanusGraphFactory.open(jg.properties)

07:20:46.169 [main-SendThread(cdh-master1:2181)] DEBUG org.apache.zookeeper.ClientCnxn - 
Reading reply sessionid:0x263f89ba9d56ce2, 
packet:: clientPath:null serverPath:null finished:false header:: 3,8  replyHeader:: 3,55834924519,0  
request:: '/hbase,F  response:: v{'replication,'meta-region-server,'rs,'splitWAL,'backup-masters,
'table-lock,'flush-table-proc,'region-in-transition,'online-snapshot,'master,'running,'recovering-regions,'draining,'namespace,'hbaseid,'table} 
07:20:46.182 [main] WARN  o.j.d.hbase.HBaseStoreManager - Unexpected exception during getDeployment()
Run Code Online (Sandbox Code Playgroud)

而错误是

java.lang.RuntimeException: org.janusgraph.diskstorage.TemporaryBackendException: Temporary failure in storage backend
at org.janusgraph.diskstorage.hbase.HBaseStoreManager.getDeployment(HBaseStoreManager.java:364) ~[jar:rsrc:janusgraph-hbase-0.2.0.jar!/:na]
at org.janusgraph.diskstorage.hbase.HBaseStoreManager.getFeatures(HBaseStoreManager.java:403) ~[jar:rsrc:janusgraph-hbase-0.2.0.jar!/:na]
at org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.<init>(GraphDatabaseConfiguration.java:1377) [jar:rsrc:janusgraph-core-0.2.0.jar!/:na]
at org.janusgraph.core.JanusGraphFactory.open(JanusGraphFactory.java:164) [jar:rsrc:janusgraph-core-0.2.0.jar!/:na]
at org.janusgraph.core.JanusGraphFactory.open(JanusGraphFactory.java:133) [jar:rsrc:janusgraph-core-0.2.0.jar!/:na]
at org.janusgraph.core.JanusGraphFactory.open(JanusGraphFactory.java:80) [jar:rsrc:janusgraph-core-0.2.0.jar!/:na]
Run Code Online (Sandbox Code Playgroud)

我不知道这个TemporaryBackendException,有没有人见过这个?

janusgraph配置的一部分是

gremlin.graph=org.janusgraph.core.JanusGraphFactory
cluster.max-partitions=64
storage.backend=hbase
storage.batch-loading=true
storage.hostname=cdh-master1,cdh-master2,cdh-master3
Run Code Online (Sandbox Code Playgroud)

其中cdh-master1,2,3是动物园管理员仲裁,版本2.0 JanusGraph,HBase的1.2

完整的堆栈跟踪是

at my.graph.Graph.<clinit>(Graph.java:7) …
Run Code Online (Sandbox Code Playgroud)

java hbase janusgraph

5
推荐指数
1
解决办法
590
查看次数

标签 统计

java ×2

dependency-management ×1

gradle ×1

guava ×1

hbase ×1

janusgraph ×1

maven ×1