首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异常或错误导致运行中止:无法启动EmbeddedCassandra[name='cassandra-2',version='3.11.6']

异常或错误导致运行中止:无法启动EmbeddedCassandra[name='cassandra-2',version='3.11.6']
EN

Stack Overflow用户
提问于 2020-09-17 13:37:19
回答 1查看 177关注 0票数 0

我在单元测试(Scalatest)中使用了embedded-cassandra。当我尝试将所有测试用例作为批处理运行时,我得到错误

代码语言:javascript
复制
An exception or error caused a run to abort: Unable to start EmbeddedCassandra[name='cassandra-2', version='3.11.6']
...
Caused by: java.io.IOException: 'WindowsCassandraNode[pid='-1', exitValue='0']' is not alive. Please see logs for more details
    Java HotSpot(TM) 64-Bit Server VM warning: Cannot open file C:\Users\manuc\AppData\Local\Temp\apache-cassandra-3.11.6-5333812070060739596/logs/gc.log due to No such file or directory
...
ava.net.BindException: Address already in use: JVM_Bind
        java.net.BindException: Address already in use: JVM_Bind
    ERROR [main] 2020-09-17 06:27:11,872 CassandraDaemon.java:774 - Port already in use: 7199; nested exception is:

我可能做错了什么?正如跟踪所说的cassandra-2,似乎另一个Cassandra实例已经在运行了?会不会是测试是同时运行的?在Intellij/Scalatest中串行运行测试的方法是什么

这个答案提到Scalatest将并行运行套件,这可能会导致端口冲突问题。有没有办法避免embedded-cassandra中的端口冲突或串行运行套件?- How to run tests in a class sequentially in ScalaTest?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-17 22:10:21

您可以尝试使用随机端口来解决问题:

代码语言:javascript
复制
EmbeddedCassandraFactory cassandraFactory = new EmbeddedCassandraFactory();
cassandraFactory.setPort(0);
cassandraFactory.setSslPort(0); // if SSL client options enabled
cassandraFactory.setRpcPort(0);
cassandraFactory.setJmxLocalPort(0);
cassandraFactory.setStoragePort(0);
cassandraFactory.setSslStoragePort(0); // // if SSL server options enabled
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63931853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档