有一个Maven项目A.一旦我做了mvn干净安装,项目生成并且该jar可用于我的本地存储库,即 c:\ repository \ com \ stackoverflow \ A \ a.jar文件无法从绝对路径加载xml文件
a.jar文件包含了几个使用这些类
从另一个Maven项目我援引的,其中使用一个XML文件中的类的方法之一类和XML文件。
代码是:
public File xmlFilder(String xmlAbsolutePath) {
File f = new File(xmlAbsolutePath);
return f;
}
第二个项目位于我d驱动器。在获取绝对路径时,我得到的是正确的绝对路径\ com \ stackoverflow \ A \ res \ p.xml。
但如果我在第3行中添加以下代码,我得到如下:
public File xmlFilder(String xmlAbsolutePath) {
File f = new File(xmlAbsolutePath);
System.out.println("AbsolutePath----"+f.getAbsolutePath()); ---> D:\com\stackoverflow\A\res\p.xml
System.out.println("getPath------------"+f.getPath()); ---> \com\stackoverflow\A\res\p.xml
System.out.println("exists--------------"+f.exists()); ----> false
return f;
}
任何人都可以请让我知道我错了。为什么它不从C盘中的存储库中选择xml。
目前尚不清楚你的xml文件在哪里。你想从jar或从文件系统加载它吗?在A.jar的资源文件夹中存在xml文件 –
。该jar存在于C驱动器中的存储库中。请注意,我已经正确添加了依赖项,并且能够正确访问项目B中A.jar中存在的方法。 – user2604052