当前位置: 首页 > 面试题库 >

分发Java应用程序的最佳方法是什么?

董和泽
2023-03-14
问题内容

Java是我选择的编程语言之一。尽管将应用程序分发给最终用户,但我总是遇到问题。

为用户提供JAR并不总是像我想要的那样友好,并且使用Java WebStart要求我维护Web服务器。

分发Java应用程序的最佳方法是什么?如果Java应用程序需要在用户计算机上安装工件,该怎么办?有没有好的Java安装/打包系统?


问题答案:

有多种解决方案,取决于你的发行要求。

  1. 只是用一个jar。这假设用户安装了正确的Java版本,否则用户将获得“类文件格式版本”异常。这对于在公司内部进行内部分配很好。

  2. 使用launch4j和类似NSIS的安装程序。尽管用户仍然可以执行诸如卸载Java运行时之类的愚蠢工作,但是这给了你更多的控制权。这可能是最流行的方法,也是我目前使用的方法。

  3. 使用Webstart。这也假设用户安装了正确的Java版本,但是使用起来却容易得多。我的经验是,这对于严格控制的Intranet环境是很好的,但是对于较大的部署,这会带来麻烦,因为它存在许多奇怪的故障。使用Java 1.7中的新插件技术可能会更好。

  4. 使用本机代码编译器(如Excelsior JET)并作为可执行文件分发,或将其包装在安装程序中。昂贵,并且通常将你绑定到Java的较早版本,并且动态类加载有些麻烦,但是对于需要最小化支持麻烦的大规模部署而言,它非常有效。



 类似资料:
  • 问题内容: 我刚刚完成了将应用程序从Windows移植到Linux的工作。 我必须创建该应用程序的安装程序。 该应用程序 不是 开源的=>我应该分发该应用程序的二进制文件(可执行文件,几个.so文件,帮助文件和图像)。 我不喜欢第一种方法(RPM和DEB软件包),因为我不想为不同的Linux发行版保留不同的软件包。 为Linux分发二进制应用程序的 最佳方法 是什么? 问题答案: 经过几次使用商业

  • 这并不困难,但它让我质疑spring auth服务器是最好的选择,还是我应该使用Keycloak?

  • 问题内容: 我想在Windows 7上发布Java GUI应用程序。该应用程序正在使用Swing Toolkit,并且不需要任何本机代码。使用NSIS安装程序安装该应用程序。我想将此应用程序尽可能地集成到Windows 7中。这表示: 当应用程序运行时,必须可以将应用程序固定到任务栏。 必须有可能将数据文件与应用程序关联,以便Windows用我的应用程序打开这些文件。 必须自动与32位Java运行

  • 问题内容: 在应用程序中是否有任何良好的GUI作为小部件支持Pygame表面? 如果这不可能或不可行,那么哪个GUI工具箱具有最佳的图形组件?我希望通过SDL包装器保持快速渲染成为可能。 问题答案: 在这里,您将获得有关如何整合以及进行互动和互动的说明。 在我看来,最好的GUI工具包是wxPython(wxWidgets的绑定),它具有几乎包括OpenGL小部件在内的所有GUI小部件,并且SDL也

  • 问题内容: 当前,我们的Java应用程序使用制表符分隔的* .cfg文件中包含的值。我们需要更改此应用程序,以使其现在使用XML文件。 为了从此文件中读取值,使用的最佳/最简单的库是什么? 问题答案: 当然,根据您的需要有很多好的解决方案。如果只是配置,则应查看Jakarta commons- configuration 和commons- digester 。 您总是可以使用获取文档的标准JDK

  • 我的问题是,对于应用程序的管理员来说,跟踪异常的最佳方法是什么。(出于维护目的,通知管理员抛出的异常)。 对于系统的用户,我认为应该捕捉异常并显示适当的错误信息。我认为,要管理系统,最好的方法是有一个消息传递系统,将每个异常的细节作为消息发送给接收者。一旦接收方收到新的错误消息,将其保存在数据库中,或者ping管理员一封包含异常详细信息的电子邮件。