相关疑难解决方法(0)

使用反射更改静态最终File.separatorChar进行单元测试?

具体来说,我正在尝试为一个方法创建单元测试,该方法需要用于File.separatorChar在windows和unix上构建路径.代码必须在两个平台上运行,但当我尝试更改此静态最终字段时,我会收到JUnit错误.

任何人都知道发生了什么事吗?

Field field = java.io.File.class.getDeclaredField( "separatorChar" );
field.setAccessible(true);
field.setChar(java.io.File.class,'/');
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我明白了

IllegalAccessException: Can not set static final char field java.io.File.separatorChar to java.lang.Character
Run Code Online (Sandbox Code Playgroud)

思考?

java reflection file-io unit-testing

26
推荐指数
1
解决办法
2万
查看次数

标签 统计

file-io ×1

java ×1

reflection ×1

unit-testing ×1