10

我有一个使用 Java+Scala+Slick2D 的项目。

从 Eclipse 中启动时,项目本身运行良好。但是当我尝试制作一个 jar 文件时,它只是拒绝工作。这是我在尝试将其导出为 Runnable jar 时不断遇到的错误:

在此处输入图像描述

如果我尝试仅导出到 Jar 文件中,则无法找到主类:

在此处输入图像描述

当然,game.TicTacGame 中有一个主类。但它拒绝承认。我尝试用一​​个简单的 Hello World 项目创建一个可执行文件,它运行良好。它甚至可以检测到主类。在这种情况下,为什么 Eclipse 没有检测到主类?

PS:我也尝试提取创建的.jar 文件,编辑manifest.mf 文件以添加Main-Class:game.TicTacGame,输入两个新行并重新创建jar。然后它给了我一个损坏的 jar 文件错误。

我无能为力,并希望在这方面提供任何帮助。我正在使用带有 Eclipse Juno、Java 1.7 和 Scala 2.10 的 Windows 7 x64

编辑:主类是在 Java

4

8 回答 8

12

好的,我得到它的工作。显然,我需要做的就是重新启动 Eclipse。然后神奇地,它开始检测 Main 类:

在此处输入图像描述

但是 jar 开始给我关于 Slick2d、LWJGL 和其他库的 noClassDefFound 错误。这就是JarSplice 来救我的地方。我像以前一样导出了项目,包括所有的库和资源。

然后,我启动了 JarSplice 并添加了如下所有内容:

  1. 进入“Add Jars”,添加刚才通过eclipse创建的project.jar,添加lwjgl.jar、slick.jar和scala-library.jar。lwjgl 和 slick 应该在您的项目 lib 文件夹中,您将在其中导入它们。scala-library 应该在它所说的任何地方都可用。确保你也添加它在此处输入图像描述
  2. 接下来,当我尝试“添加本地人”时,它一直给我“重复库”错误。所以我将它们全部删除并保持为空。
  3. 接下来在“主类”中,我输入了主类的路径,即game.TicTacGame
  4. 最后,“创建胖罐”。它完美地工作:)
于 2012-11-23T12:42:49.960 回答
8

I just encountered the same problem, and here is how I solved it:

  1. Open "Run As" --> "Run Configuration" on the project you want to export

  2. Click "Search" for Eclipse to refresh the list of main class

  3. Then export Runnable JAR file again, and everything goes smoothly.

于 2013-07-29T06:30:29.383 回答
0

I recently figured a better way to do this using 'Runnable jar export' which might help you. In order for your main method to be listed in that list, you need to add the main method to the Run Configuration list.

This way it's simpler to create a runnable jar especially if you want to do it repeatedly.

于 2013-05-30T06:24:01.047 回答
0

Well, got the same Problem and solved it by selecting my GUI to export and not the whole Project.

于 2017-01-18T10:55:24.760 回答
0

The most easiest method is run the java file once and automatically the file appears in the list.Even i was facing the error but it was solved by using this simple method.

于 2020-06-15T06:33:33.803 回答
0

I had this problem with Eclipse version 2019-03 (4.11.0) and compiler JaveSE-11. Choosing the right launch configuration and exporting runnable jar failed over and over again with an error

Could not find main method from given launch configuration

I've tried to restart Eclipse and do a clean build, but it didn't help.

In the end, I found a workaround to go into the generated jar file (I've used 7zip) and change META-INF/MANIFEST.MF file. The file should have something like this inside:

Manifest-Version: 1.0
Class-Path: .
Main-Class: <package name>.<class name>

Hope it helps someone.

于 2020-08-11T14:48:53.453 回答
0

我遇到了同样的问题,在我的情况下,我发现 Runnable Jar 文件规范对话框中的“启动配置”不正确。不知何故,eclipse自动接受了它。“启动配置”应该是具有 main 方法的 java 文件。基本上,它是文件名包。在我更改“启动配置”的那一刻,我能够创建 Jar 文件而没有任何错误。

于 2021-07-20T13:30:30.257 回答
0

我遇到过同样的问题。为了解决这个问题,您需要关闭所有打开的文件并打开一个具有 main() 方法的 java 类文件。然后从 eclipse 中导出并正常工作。

于 2021-09-03T07:31:26.500 回答