当前位置: 首页 > 知识库问答 >
问题:

将eclipse项目导出到jar

鲜于阳
2023-03-14

我确实检查了已经回答过的问题,这些问题的主题几乎与这个问题相同,但没有一个回答过的问题能够解决我的问题。

我已经在线搜索了大约4个小时,尝试了很多不同的方法来解决我的问题。。

我想在Java做一个乒乓游戏,现在我想导出我的项目,这样我就可以把它发给一些朋友,这样他就可以试试了。

我在这个项目中使用LWJGL,所以我确实在参考库和LWJGL中添加了一些JAR。jar添加了windows本机,它包含在projects lib文件夹中。以下是project viewer的图像:

在阅读为什么jar不工作的时候,我也读到你需要一个Manifest.mf文件,所以我创建了一个,在这个清单文件中,我有以下文字:

Manifest-Vershtml" target="_blank">ion: 1.0
Main-Class: jGame.Main
Class-Path: lib/jars/asm-debug-all.jar lib/jars/jinput.jar lib/jars/lwjgl.jar lib/jars/izma.jar lib/jars/slick.jar

在类路径下面还有2个空行,因为我听说你必须有。

只要我在eclipse中运行该项目,它就可以正常运行,但是当我在eclipse中使用runnable jar或jar向导导出项目时,双击。jar文件,因此我进入cmd并使用以下命令:

java.exe -jar JGame.jar

并显示以下消息:

我已经检查了至少10次我为主类提供了正确的路径。。我不知道该怎么办了。在eclipse向导中,我一直在尝试导出可运行jar和导出普通jar,但两者都不起作用。另外,在向导中,我选择了导出一个普通的jar,因为当我选择runnable时,库会因为lib文件夹被替换而变得混乱。

共有1个答案

邓深
2023-03-14

在尝试使用JARSPILE时,我成功地解决了这个问题。

读完这篇文章后:

它不会像您现在尝试的那样工作,因为您需要将本机文件放在jar旁边,并通过“-Djava.library.path”参数指向它们。

如果您只想要一个jar,并且希望避免命令行和本地文件的麻烦,请使用JarSplice工具。JarSplice易于使用,并将自动为您处理本地文件。

1) 只需将您的项目(类和资源)导出到jar(通过IDE更容易实现)。

2) 然后运行JarSplice,将所有需要的jar添加到jars选项卡(您的应用程序jar、lwjgl.jar和您正在使用的任何其他外部jar)。

3) 然后在“本机”选项卡上添加所有本机文件(windows*.dll、linux*.so、mac*.dylib)

4)在类选项卡上添加主类。然后创建你的罐子。

然后,您可以通过双击它来运行这个jar(或者如果您希望通过命令行使用“java-jaryourapp.jar”)。

我从这个链接找到了这个解决方案:无法启动。jar文件(使用LWJGL)

第一次不起作用的原因是我没有包括实际的。使用JarSplice时从eclipse导出的jar文件。

 类似资料:
  • 所以,我已经在互联网上阅读了如何将我的项目提取到一个可运行的Jar文件。 我可以很好地提取它们,但当我尝试运行它时,它什么也不做。 当我在命令提示符下用 它所指向的特定行是: 它正在产生一个空指针异常。当我在eclipse中运行我的项目时,它就很好了。 当我将它导出到一个jar时,它得到一个NPE,我相信这是由于它找不到文件造成的。 以下是我的项目工作区: http://imgur.com/034

  • 问题内容: 我是一位有抱负的Java程序员,希望在项目中使用JSON。我正在遵循一个编程教程(从书​​中),该教程要求我使用以下行将JSON导入到我的项目中: 但这产生了一个错误,因此我用以下代码替换了它: 这也会产生一个(不同的)错误: 导入org.json无法解析 我认为问题是我的Eclipse工作区中实际上没有JSON库。如何执行此操作,以便可以使用JSONArray?我找到了用于JSON的

  • 问题内容: 我有一个本地CMake项目,并且我想与它一起使用Eclipse IDE,以便通过提供自动完成功能和其他功能使我的开发更加轻松。我似乎找不到如何在Eclipse中导入CMake项目的方法。 PS:我愿意征求其他与CMake一起使用的IDE的建议。 问题答案: KDevelop是一个很棒的IDE,具有强大的CMake支持。 至于Eclipse-运行以下命令: 这将为您生成Eclipse项目

  • 问题内容: 我只是想知道,是否有可能同时将多个项目导入Eclipse。因为每当创建新工作区时,都必须将所需的项目从旧工作区导入到新创建的工作区中。 因此,很高兴知道是否存在同时导入多个项目的选项? 谢谢。 问题答案: 如果所有旧项目都存在于单个目录或单个父目录中,则可以执行 File- > Import …-> Existing Projects intoworkspace 。选择一个根目录,该目

  • 我习惯于使用Maven分发项目,通常,团队中的每个人(以及CI服务器)都可以依赖Maven进行打包、测试、运行等调试,但是,项目可以导入到Eclipse并通过主类启动(与Eclipse的Maven插件相反)。Spring-Boot就是一个很好的例子。导入这样的项目后,我可以只运行或调试主类。 然而,对于JavaFX11来说,编写一个配置所有必要依赖关系的pom.xml似乎很有效,但是当我将这样一个

  • 我今天花了几个小时在谷歌上搜索大多数解决方案都过时了。我在项目所遵从的窗口上使用eclipse,但我无法使它成为一个独立的应用程序,如果没有: 有哪些方法可以将JavaFX11项目导出到可执行jar中,而无需在导出后将其链接到JavaFX-SDK-11.0.2? 谢了。