我想通过导出在eclipse中创建一个可运行的JAR,其中包含引用的库,即jackson。曾经有胖罐子这似乎是Eclipse提供的导出到可运行JAR之前的goto解决方案。Runnable JAR不能与引用库一起工作
从这question,第一个选项将是我正在寻找。由于它目前是一个小型项目,因此总是把所有东西放在一起并不是一个问题(加上它对我来说更简单,因为我只是从JAR,可运行的程序和jnlp开始)
当我尝试启动它有一个警告窗口说有问题,并尝试在控制台中找到它(我无法打开它)。
如果我删除这个引用的库的任何使用,一切都运行完美(除非它没有做我想要的部分)。窗户看起来像我设计的方式,但没有图书馆没有功能。
我甚至没有堆栈跟踪来帮助解决问题。我创建了没有任何引用库的其他项目,一切都很好。所以我几乎把它缩小了。
因为我让Eclipse处理导出和所有事情,所以我不认为你需要清单来查看它是否正常。如果您有任何问题,我会提供您需要的信息。不言而喻,该项目直接从Eclipse运行。
的Eclipse 版本:靛蓝服务发布2 版本ID:20120216-1857
编辑以下Baqueta的回答
什么时候我做的情况是,我得到一个定制RuntimeException的。我在这里有点困惑。这是我的代码的简单解释。 我有一个实用工具类(UtilityJSON),使用引用的库(杰克逊)。该实用程序类的构造函数实例化在引用的库中定义的对象,我们称之为mapper。 UtilityJSON的一种方法使用'mapper'的方法。此时引发异常。为什么我感到困惑的是'映射器'成功实例化,但使用它的方法引发了一个异常。如果jar无法找到引用的库,则可能无法创建对象'mapper'。但从Eclipse运行项目都很好。 运行可执行文件jar时有什么办法可以调试吗?也许在控制台中回应一些东西。
编辑2
我可能已经发现的错误。我的程序在项目内的文件夹中读取* .txt文件。当探索jar的内容时,我发现这个文件夹没有包含在内,因此是例外。所以现在的问题变成:我如何包含这个文件夹?它位于项目的根文件夹中。
当您尝试运行Jar时,您会收到什么错误消息?转到命令提示符并输入'java -jar <你的jar名> .jar',它应该告诉你发生了什么问题...... – vaughandroid 2012-04-20 08:16:06
嘿,那里,对不起,我错过了你的答案。请参阅我的编辑。 – Chamane 2012-04-23 13:04:44
从我收集你试图从资源管理器启动它,它听起来像它即将开始控制台之前即将死亡。从命令行启动它可能会获得更多信息。以cmd(或等同于)包含jar的文件夹并键入'java -jar .jar'。它会希望给你一些有用的信息,为什么它不能启动... –
vaughandroid
2012-04-23 13:14:52