public static void main(String[] args) throws IOException {
File file = new File(".");
System.out.println(file.getCanonicalPath());
}
同样的代码,在idea上运行和直接运行类文件结果是不同的,还有一个玄学问题,有一个maven项目在idea上运行和打包后在本地跑jar包运行结果也是不同的 用Java命令和在idea上运行真的有什么不一样吗,有人研究过这个问题吗
一样的,不管怎样运行,最终都是调用命令行java命令,只是传递给java命令的参数不一样,环境变量不一样而已。
这段代码之所以结果不一样,是因为当前工作路径不一样,File file = new File(".");是工作路径的File对象。