SWT部署为EXE

SWT部署为EXE,swt,Swt,由于业务需要,我最近开始在4班学习SWT,之前我已经在Swing上开发了2年 我们将Swing应用程序部署为具有资源依赖性的JAR。在SWT中,可部署的形式和等价物是什么 我有问题,但由于我的培训是在线的,我正在学习一门课程,除StackOverflow外,没有其他讲师: SWT应用程序能否作为独立的EXE部署?人们谈论的Eclipse EXE是怎么回事?这是否意味着所有SWT输出都将是基于Eclipse的EXE?或者他们是完全独立的前任 如果1的答案是“是”,编译器如何生成本机win32可执行

由于业务需要,我最近开始在4班学习SWT,之前我已经在Swing上开发了2年

我们将Swing应用程序部署为具有资源依赖性的JAR。在SWT中,可部署的形式和等价物是什么

我有问题,但由于我的培训是在线的,我正在学习一门课程,除StackOverflow外,没有其他讲师:

SWT应用程序能否作为独立的EXE部署?人们谈论的Eclipse EXE是怎么回事?这是否意味着所有SWT输出都将是基于Eclipse的EXE?或者他们是完全独立的前任

如果1的答案是“是”,编译器如何生成本机win32可执行代码?这是我完全困惑的一个领域。通常,一个可部署的jar被提供给VM,VM读取清单并完成它的工作,但是一个EXE作为输出?幕后到底是什么

如何管理外部资源包?在部署时

国际化支持


谢谢。

部署SWT应用程序与部署Swing应用程序完全一样,只是添加了几个JAR和一个本机库。您当前必须使用某些工具为您的Swing应用程序生成exe文件;该工具可能有能力也可能没有能力打包本机代码库。该工具不太可能正在创建“本机win32可执行代码”。相反,它将Java类文件与JRE和存根Windows PE文件打包在一起

SWT是作为Eclipse的一部分开发的。Eclipse有富客户机平台(RCP)。如果将Java应用程序构建为RCP应用程序,则可以使用Eclipse工具为Windows或其他任何地方生成可执行程序包。它不是一个单一的可执行文件,而是一个包含可执行文件的目录。但是,您不必使用Eclipse来使用SWT

RCP应用程序必须使用的不仅仅是SWT。它必须构建为一组依赖于核心Eclipse平台的OSGi捆绑包。一旦在Eclipse中运行了这样一个东西,Eclipse中就会有一个向导,它将创建一个Windows“可执行”目录,其中包含JAR文件中的代码、JAR文件中的大量Eclipse代码、JRE和一个PE.exe存根。您可以从ant自动化这个过程,尽管我自己从来没有这样做过。我担心,为了跟上这一切的进度,你需要阅读大量书籍


SWT和Swing在资源和国际化方面没有区别。其他与Eclipse相关的库包括I18N规程,但不包括核心SWT。您只需像在任何其他Java应用程序中一样使用区域设置和属性文件。

基本上,您需要使用常规的Java-jar命令来运行项目

然后创建一个exe引导程序,在双击该命令时运行该命令


可以做额外的事情,比如检查exe程序中的JVM版本

SWT不是基于Eclipse的,但是eclipseui是基于SWT的。Eclipse将SWT库用于其绘图。它使用Eclipse联盟的GUI库,可用于许多系统。如果您想用SWT GUI部署普通Java应用程序,只需添加相应的libs和.dll或.so即可。因此,如果您提供相应的库,那么您可以使用Java和Swing进行部署的所有工作都可以使用SWT来完成。有一些工具和方法可以将所有内容编译成.exe,但这并不一定是必需的。 我并不真正理解您所说的EclipseEXE,但Eclipse只提供了一个初学者EXE,它基本上只是一个包装器。否则,有些人会引用Eclipse RCP als Eclipse EXE,但这是不正确的。您可以使用EclipseRCP作为应用程序的基础,这将使用SWT作为UI库。但是您可以自己使用SWT,就像使用库一样,而不需要Eclipse跟踪


我希望这会有所帮助。

您可以使用像这样的java-to-EXE包装器。
希望能有所帮助。

感谢您的明确回复。只是想知道:在eclipse中,如何为Windows生成可执行程序包?假设我有一个传统的HelloSWT外壳编码。如果一个可执行程序包不太长,你能指定获取它的步骤吗?否则我会在有时间的时候找到它。我用过一次,它很完美