Java 每当我试图导出到可执行jar时,Eclipse都会给出错误

Java 每当我试图导出到可执行jar时,Eclipse都会给出错误,java,eclipse,jar,export,executable-jar,Java,Eclipse,Jar,Export,Executable Jar,我正在尝试将我今天在EclipseIndigo中制作的一个小程序导出到一个可执行文件,但是,每次我这样做时,都会出现两个问题中的一个。该程序使用一个我希望放在JAR中的资源,但是Eclipse不会放在可执行JAR中,无论我在导出时勾选哪个选项,或者资源在哪个文件夹中——第一个问题 第二个问题是,每当我告诉eclipse“将所需库提取到生成的JAR中”时,当我双击可执行JAR时,就会收到以下错误: 找不到主类:main.Launcher。程序将退出 我不认为第二个问题现在是个太大的问题,但是第一个

我正在尝试将我今天在EclipseIndigo中制作的一个小程序导出到一个可执行文件,但是,每次我这样做时,都会出现两个问题中的一个。该程序使用一个我希望放在JAR中的资源,但是Eclipse不会放在可执行JAR中,无论我在导出时勾选哪个选项,或者资源在哪个文件夹中——第一个问题

第二个问题是,每当我告诉eclipse“将所需库提取到生成的JAR中”时,当我双击可执行JAR时,就会收到以下错误:

找不到主类:main.Launcher。程序将退出

我不认为第二个问题现在是个太大的问题,但是第一个问题非常令人沮丧,所以我希望得到任何帮助或建议。提前谢谢

(奇怪的是,甚至更令人沮丧的是,如果我在不久前使用Eclipse的早期版本进行的项目中也经历了同样的过程,那么它工作得非常完美。)

项目的文件夹结构如下:


在项目文件夹中,默认有以下目录
.settings
bin
src
。我已将资源(一个
png
放在
bin
文件夹中,但我也在
src
文件夹中尝试过它。

您能提供一些详细信息吗

eclipse项目的结构是什么? 资源是什么类型的

更重要的是,资源文件在项目结构中的位置? 该资源文件的文件夹是否包含为源文件夹?(似乎是导出到jar的先决条件)

项目生成时是否将其复制到bin文件夹

非常感谢 迈克尔

更新: 我用一个main方法构建了一个非常简单的JavaProject1Java类,并将一个示例png文件放在源文件夹中。我刷新了项目以使png在项目中可见,然后清理了项目以重新构建它,然后在eclipse中运行了主类。这将在通过向导导出时为您提供运行配置。此后,我将整个项目导出为“runnable jar”,选择运行配置并选择“在生成的jar旁边的子文件夹中复制所需的库”。包括png,并找到了主类。可以执行可执行JAR

(环境:Eclipse Indigo R1、Ubuntu、JDK 6)

你可能想玩我所经历的完整的步骤序列。也许eclipse只是没有获取文件或其他更新


尊敬的Mike首先,我要感谢Mike(marksml)的帮助,并试图为我的问题提供解决方案。不幸的是,他的回答对我不起作用

我开始查看我以前的所有项目,并注意到我遇到的一个问题是奇数(因为它是唯一一个不起作用的项目),而使它成为奇数的因素是,我发现是JRE系统库版本。该项目使用的是JavaSE-1.7库,但当我将其更改为JavaSE-1.6时,就像我的其他项目一样,它奇迹般地工作并完美地导出!我仍然很好奇为什么会是这样,但至少我现在已经开始工作了


安迪,带着感谢和亲切的问候,谢谢你的回答。请看我对原始问题的编辑。这是我能想到的唯一其他信息。嗨,安迪,我添加了一些问题分析细节。请在我之前的回答中查看以上内容。再次感谢您的回答(+1)。不幸的是,我没有帮助解决这个问题,所以我决定自己进一步调查这个问题-请看我的答案。嗨,安迪,谢谢你在解决问题后提供解决方案的细节。祝你一周愉快。