【问题标题】:Eclipse build path: library with native library folderEclipse 构建路径:带有本机库文件夹的库
【发布时间】:2013-02-16 18:28:28
【问题描述】:

我创建了一个 Eclipse 项目,我需要将 Super CSV 库与 Dozer 一起使用。我下载了 Super CSV 并在 /usr/lib 中创建了一个新文件夹“super-csv”。

现在我有了:/usr/lib/super-csv/super-csv,其中包含超级 csv jar(+ javadoc 和源代码), /usr/lib/super-csv/super-csv-dozer 包含超级 csv dozer jar、javadoc 和源代码以及一个“lib”文件夹。

/usr/lib/super-csv/super-csv-dozer/lib 内部,有许多 .jar 文件需要 super-csv-dozer 才能工作,所以我将其添加为本机库,用于在 Eclipse 中 java 构建路径的库选项卡中的 super-csv-dozer 条目。

当我尝试编译项目时,我收到一个 java.lang.ClassNotFoundException 指向一个包含在 lib 文件夹中的一个 jar 文件中的类。

只有当我手动将 lib 文件夹中的每个 jar 添加为外部 jar 时,一切才有效。

谁能解释我哪里做错了?

【问题讨论】:

    标签: eclipse dozer buildpath supercsv


    【解决方案1】:

    我建议使用Maven - 它是一个广泛使用的 Java 构建工具。要开始使用 Super CSV,只需添加 2 个依赖项(在 Super CSV website 上列出),您的 Eclipse 项目就可以开始了。

    虽然有一点学习曲线,所以如果您只想手动将 jars 添加到 Eclipse 的构建路径中,我建议您在项目的根目录下创建一个 lib 目录并将所有 jars 放在那里.

    my-project
        |-src
        |  |- (your source in here)
        |
        |-lib
           |-commons-beanutils-1.8.3.jar
           |-commons-lang-2.5.jar
           |-commons-logging-1.1.1.jar
           |-dozer-5.3.2.jar
           |-slf4j-api-1.7.1.jar
           |-super-csv-2.0.1.jar
           |-super-csv-dozer-2.0.1.jar
    

    然后您可以将它们添加到构建路径(here's 一个很好的指南)。

    请注意:如果您不使用 Dozer 扩展,那么您只需要在构建路径上使用 super-csv-2.0.1.jar

    【讨论】:

    • Maven 不是“那个”行业标准,它是“一个”行业标准。不要有隧道视野。
    • 很公平 - 我的观点是使用构建工具是一个好主意,并且(对于 Java)Maven 是开始成为 most widely used 的好地方。然而,仍然有人在使用 Ant,而且很多人已经转向 Gradle(包括我在内),所以我很高兴地编辑了这个答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-04
    • 1970-01-01
    • 2012-11-04
    • 1970-01-01
    • 1970-01-01
    • 2021-05-07
    • 2013-06-02
    相关资源
    最近更新 更多