“Runnable Jar”SWT元素不起作用

时间:2011-11-06 21:05:24

标签: java swing swt

使用SWT组件部署应用程序时遇到问题。

我阅读SO link并将SWT与我的代码合并 当我在eclipse 3.7.1 Indigo中运行它时( Ctrl + F11 Alt + Shift X J )。 它在日食中完美运行。

但是当我将文件导出为“可运行的JAR”时:
应用程序本身运行正常,但SWT文件选择器没有。

当我将文件导出为JAR时,即根据以下内容添加清单:wiki eclipse link + SO link + SO link + SO link并且我收到错误故障排除部分(eclipse wiki)。 我检查了那里列出的所有解决方案,但它们对我不起作用。

问题:

  1. 为什么SWT文件选择器在eclipse中工作而不是在“runnable”中工作 jar“?
  2. 为什么“runnable jar”导出向导在eclipse中,而不是 自动合并SWT?
  3. swt.jar被正确命名并且在运行时文件夹中并且主类是正确的时,为什么导出为jar不能使用清单?但是它仍然会出错:?{{ {1}}
  4. 我假设最简单的解决方案是使用Swing文件选择器。但我想知道如何让SWT应用程序在eclipse之外运行。

    此致

    UPDATE:原来需要将所有Could not find the main class. Program will exit.个文件(在库构建路径中)添加到清单中。我只是添加了.jar,这就是我收到swt.jar错误的原因。将另一个Could not find main class...添加到清单中解决了上面的问题。

    从命令行运行时:SWT组件在导出jar + runnable jar时工作正常。

    但是,尝试通过双击运行可运行jar时,SWT组件不起作用。 Q1和Q2仍未解决(双击时SWT文件选择器不起作用,但在.jar中工作...)。

1 个答案:

答案 0 :(得分:1)

解决 Q1,Q2 java can run jar from cmd but not by double clicking

有趣的是,更新到jre 7u1也解决了我的问题。 下载自http://www.oracle.com/technetwork/java/javase/downloads/jre-7u1-download-513652.html

Q3清单:

  

清单 - 版本:1.0

     

Class-Path:swt.jar example.jar (在空格后添加其他.jar文件,我忘记了另一个jar)

     

Main-Class:mypackage.MyClassWithMainMethod

     

(文件末尾的空行)

感谢您的帮助

进一步清晰度:您可以在导出为“jar”时手动创建清单。导出为“runnable jar”时,不需要手动执行。