关于JavaFX功能的一般问题很少

时间:2015-11-09 01:58:11

标签: user-interface javafx exe executable-jar launch4j

我正在使用JavaFX为我正在使用的软件构建GUI。我称之为软件,但它实际上是一系列自动化步骤,编译成一个独立的.exe文件。我有大约6个这样的可执行文件,这就是为什么我要构建一个GUI来充当各种各样的前端主菜单。

理想情况下,我将整个包(GUI,exes)合并到一个文件Jar中,然后我将其发送给客户端,或者用JSmooth或Launch4j包装它。

问题:

1)是否可以将所有6个.exe文件与GUI一起组合到一个包中。因此,如果我点击GUI上的按钮2,它会运行.exe#2,等等。我应该理解哪些概念?

2)这是最佳做法,还是有更好的方法?我是Java新手,这就是为什么我没有使用它构建整个软件,只是GUI。

3)我已经读过最好将父jar(或exe?)中的exe解压缩到用户PC上的临时文件中。它是否正确?即使是多个包裹的前任?

任何答案都有帮助。我试图避免建立一些东西,只是意识到我不能做我需要的东西。感谢

1 个答案:

答案 0 :(得分:0)

如果您对这些6个.exe文件的具体内容有所了解,那么编写答案要容易得多。不过,可以指出一些事情。答案与问题的顺序相同。

  1. 是的,您可以将exe文件打包到jar中。不,你不能从jar中运行exe。一个常见的解决方案是暂时(在您的应用程序处于活动状态时)或永久解压缩exe,然后告诉操作系统执行它。
  2. 我不完全确定你的问题中“最佳实践”是指什么。理想情况下,您的逻辑(后端)代码将使用Java编写,并且所有6个exe文件都将是单个Java应用程序的一部分。我尊重你是Java的新手,所以在你的特殊情况下,拥有可执行文件的前端是完全没问题的。但是,请记住,您的解决方案是特定于Windows的,除非您计划提供其他操作系统可执行文件。
  3. 是的,您需要提取exe文件。你使用的父可执行文件(exe或jar)并不重要。为了简单起见,我会选择jar,因为你不需要使用任何第三方软件来构建这样的jar。
  4. 总而言之,考虑到您的情况,将JavaFX应用程序和.exe文件打包到一个可执行jar中。当用户需要执行“.exe”时,将“.exe”解压缩到运行JavaFX的同一目录中。当应用程序退出时,删除该目录中的所有“.exe”文件