Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 禁用基于文件分隔符的Junit5测试_Java_Annotations_Junit5 - Fatal编程技术网

Java 禁用基于文件分隔符的Junit5测试

Java 禁用基于文件分隔符的Junit5测试,java,annotations,junit5,Java,Annotations,Junit5,我希望能够基于OS使用的文件分隔符禁用JUnit5测试 例如,windows文件分隔符是\,示例路径是src\resources\fou 在另一个OS上,文件分隔符可能是/(可能是MAC?)。 当文件分隔符为\时,我只希望我的测试运行 我找到了:@EnabledIfSystemProperty(name=“file.separator”,matches=“[/]” 因此,我将/更改为\,以匹配windows文件分隔符,但它不起作用,出现以下错误: 无法评估条件只有Windows使用\作为其文件分

我希望能够基于
OS
使用的文件分隔符禁用JUnit5测试

例如,windows文件分隔符是
\
,示例路径是
src\resources\fou

在另一个
OS
上,文件分隔符可能是
/
(可能是MAC?)。 当文件分隔符为
\
时,我只希望我的测试运行

我找到了:
@EnabledIfSystemProperty(name=“file.separator”,matches=“[/]”
因此,我将
/
更改为
\
,以匹配windows文件分隔符,但它不起作用,出现以下错误:
无法评估条件

只有Windows使用
\
作为其文件分隔符

因此,以下情况应导致想要的行为

@测试
@使能操作系统(OS.WINDOWS)
仅在Windows()上无效{
// ...
}
抄袭自:

也就是说,在Java中,通过4(四)个反斜杠匹配一个反斜杠。这也应该起作用:

@EnabledIfSystemProperty(name=“file.separator”,matches=“\\\”)

愚蠢的错误我用了两个\\。应该去四个人。我想有人可能会更改文件分隔符(不知道是否可能),这就是我不想检查操作系统的原因。
@EnabledIfSystemProperty(name=“file.separator”,matches=“\\\\”
工作正常。谢谢