【问题标题】:How to include resource folder in executable .jar file in eclipse?如何在 Eclipse 的可执行 .jar 文件中包含资源文件夹?
【发布时间】:2018-04-16 11:18:13
【问题描述】:

我需要创建一个应用程序,用于使用各种参数(例如高度、体积或底面积)对各种类型的多边形进行排序。具有多边形参数、排序类型、排序方法的文件名的参数将通过命令行传递。该文件位于项目中我的 src 文件夹之外的资源文件夹中。我已经实现了所有程序,当我通过 eclipse 运行配置使用传递参数运行时,它运行良好。但是当我尝试使用 cmd 相同的参数运行我的 .jar 文件时,它给了我FileNotFoundException。

我使用7zip 打开了我的 jar 文件,发现它从未将我的资源文件夹解压缩到 .jar 文件中。我在网上搜索并尝试将我的资源文件夹包含在构建 Eclipse 的路径中。但还是不行。

【问题讨论】:

  • 是否在“Java Build Path”的“Order and Export”选项卡中勾选了resources文件夹?
  • 是的,我刚刚查过了。它被检查并导出到 jar 文件中,但现在它正在单独导出所有文件,而不是作为文件夹。感谢您的回复。
  • 尝试在 Eclipse 导出对话框(输入 JAR 文件名的屏幕)中选择“添加目录条目”

标签: java eclipse executable-jar


【解决方案1】:

按照以下步骤操作:

1) 点击项目 -> 属性 -> 构建路径 -> 源 -> 添加文件夹并选择资源文件夹。

2) 创建你的 JAR!

编辑:您可以通过使用 7zip 检查来确保您的 JAR 包含文件夹。

也将此链接冷藏How do I add a resources folder to my Java project in Eclipse

【讨论】:

  • 感谢您的回复。我刚试过。但它单独添加文件而不是资源文件夹。仍然会发生 FileNotFoundException。
  • 遵循您的编辑提示后,我了解到即使您的资源文件,例如someFile.txt 位于<YourProjectName>/src/main/resource/<yourpackagename>/someFile.txt,您必须访问它的位置是:<yourpackagename>/someFile.txt。 (在使用 winrar/7zip 检查.jar 文件后可以看到。
【解决方案2】:

首先,您需要为资源创建一个源文件夹,例如将其命名为 res,然后将您的图像文件夹移动到 res。当你生成jar文件时,你会看到图像文件夹,而不是res文件夹或单独的文件。

【讨论】:

    【解决方案3】:

    这取决于您如何生成 JAR 文件。

    当您在 Eclipse 中导出 jar 时,请确保选中“导出 java 源和资源”按钮https://www.cs.utexas.edu/~scottm/cs307/handouts/Eclipse%20Help/ensureJavaFiles.jpg

    有很多方法可以做到这一点,推荐使用 Gradle,类似这样的方法Creating runnable JAR with Gradle

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-14
      • 2019-06-04
      • 2018-04-26
      • 2016-12-05
      • 2022-01-24
      • 2013-04-25
      相关资源
      最近更新 更多