【问题标题】:How do I load a Ressource Path in multi-projects in proper project?如何在正确项目的多项目中加载资源路径?
【发布时间】:2020-05-23 11:06:34
【问题描述】:

我必须使用这个项目配置:

Project 1
+ src
+ Model
  + Datamodel.dtd
Project 2
+ src

项目 1 对 xml 做了一些工作,应该从文件夹“模型”加载 dtd。我把这个文件夹放在项目 1 的类路径中。 项目 1 在项目 2 的类路径中。 在项目 2 中,我调用了项目 1 中的一个类,该类尝试加载“Datamodel.dtd”。但是,我的资源路径指向项目 1 的基本路径,而不是项目 2。因此它会抛出“FileNotFoundException”。

任何想法如何解决这个问题?

【问题讨论】:

    标签: java eclipse eclipse-classpath


    【解决方案1】:

    在依赖项目中只有导出的类路径条目可见

    1. 选择项目 1
    2. 转到项目>属性标签排序和导出
    3. Model 类路径条目的选中复选框

    【讨论】:

    • The_Model_ 类路径已导出。异常的路径仍然指向项目2的目录。好吧,我想我必须使用类加载器来加载这个资源,对吧?有没有办法检索此资源的路径以通过文件系统访问它?
    • @MrPotato 你没有提到它已经被导出了。类路径上的资源必须读作InputStream(例如通过MyClass.class.getResourceAsStream(fileName)),而不是File。请出示您的代码。
    • 我以前不知道这个功能。所以有问题。我使用File 并尝试使用ClassLoader 阅读它而不是InputStream。现在,它运作良好。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多