java.lang.RuntimeException:java.nio.file.DirectoryNotEmptyException
在执行Neo4j测试用例时。我面临以下错误java.lang.RuntimeException:java.nio.file.DirectoryNotEmptyException,java,neo4j,java-io,Java,Neo4j,Java Io,在执行Neo4j测试用例时。我面临以下错误 java.lang.RuntimeException: java.nio.file.DirectoryNotEmptyException:test-data/org.neo4j.test.ha.ClusterTest/D4FA83E7CD83F51509461D8F437E0481/testConflictingHaPorts at org.neo4j.test.rule.TestDirectory.complete(TestDirec
java.lang.RuntimeException: java.nio.file.DirectoryNotEmptyException:test-data/org.neo4j.test.ha.ClusterTest/D4FA83E7CD83F51509461D8F437E0481/testConflictingHaPorts
at org.neo4j.test.rule.TestDirectory.complete(TestDirectory.java:211)
at org.neo4j.test.rule.TestDirectory.access$200(TestDirectory.java:57)
at org.neo4j.test.rule.TestDirectory$1.evaluate(TestDirectory.java:113)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:254)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:149)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
看起来它无法删除目录,因此面临上述执行选项。用户拥有授予的所有权限
下面的代码片段用于删除目录
public void evaluate() throws Throwable
{
directory = new File( new File( new File( new File( "target" ), "test-data" ),
description.getClassName() ), description.getMethodName() );
delete( directory );
directory.mkdirs();
boolean success = false;
try
{
base.evaluate();
success = true;
}
finally
{
if ( success )
{
delete( directory );
delete( directory.getParentFile() ); // works if it's empty
}
}
}
目录不是空的。在删除之前请尝试清除目录。我已删除了目录内容,但它不起作用。我认为它试图在同一个代码段中创建和删除目录。您运行的是什么操作系统?有任何隐藏文件吗?我正在使用Red Hat Enterprise Linux操作系统。是,存在一些隐藏文件。当您尝试删除目录时,隐藏文件是否仍然存在?如果是,它们将阻止删除。您必须确保使用可以处理隐藏文件的命令,例如
ls-a
,以查看它们是否仍然存在。