我得到了 Netbeans 7.1 如何制作我的程序的安装版本?我需要它:Win32 和 Win64。我还必须包括 PostregSQL 数据库。
2 回答
如果“Netbeans 7.1”是指您已经使用 Netbeans 平台构建了一个应用程序,那么您可以为 Netbeans 平台应用程序生成一个安装程序。请参阅自定义 Netbeans 平台安装程序和使用 NetBeans IDE 6.9 生成 NetBeans 平台安装程序等。
至于 PostgreSQL:我建议不要自动安装 PostgreSQL。如果您愿意,请在您的应用程序旁边提供安装程序,但请不要为用户安装它。
为什么?
PostgreSQL 列表中的许多问题都来自那些在软件捆绑时安装了 PostgreSQL 的旧版本的人。(是的,我在看你 Poker Tracker)。如果您鼓励用户在您支持的主要版本中下载最新的点发布,您将不会遇到这些问题。
您的应用程序可能会尝试使用预设的密码和位置静默运行 Pg 安装程序。如果其他人的应用程序已经为相同的主要版本运行了 Pg 安装程序,或者如果用户已经安装了 Pg,则您的应用程序将无法配置安装,因此无法正常运行。
如果用户稍后想要安装 PostgreSQL,但他们不知道您已经为他们安装了它,他们将不知道 PostgreSQL 服务密码或“postgres”管理员密码,因此他们会对 Pg 安装程序不知道的原因感到困惑不按他们的期望工作。他们最终会成为 PostgreSQL 邮件列表中另一个困惑的用户。
我真的希望 EnterpriseDB 安装程序将来能够支持“品牌”安装,其中安装进入单独的位置和非默认端口上的单独服务帐户,因此它不会涉及常规 Pg 安装. 现在情况并非如此。
如果您确实必须在您的应用程序中安装 PostgreSQL,请使用 .zip 二进制包(适用于 Windows)并使用非默认端口自行在非默认位置运行 initdb。这样您就不会破坏常规安装。这也意味着您将更干净地安装在其他平台上,例如 Linux 系统,其中 PostgreSQL 通常被打包为操作系统的一部分。
Java 在JVM上运行,这意味着您的应用程序需要的唯一安装是其机器上安装的处理器的 Java 运行时。
您可以分发 JAR,或者如果您愿意,可以创建另一种语言的 EXE 或批处理文件来执行 JAR。但是,如果您采用 EXE 路线,则必须在两种体系结构上进行编译才能兼容。