标签: install4j

根据我的要求,我应该使用NSIS或jprofiler/install4j

我们有一个Web应用程序,我们需要为客户更轻松地部署它们.新安装的当前工作流程:

  • 确保机器上有JRE(32或64位)
  • 安装Tomcat(32或64位)
  • 在Oracle或SQL Server中创建数据库(我们为此提供SQL脚本)
  • 将一些值写入我们的设置表,如主机名.(可以让用户验证这些,但不希望用户必须点击它们.
  • 创建一个连接属性文件(我们提供一个迷你JAR应用程序来帮助解决这个问题),它将位于Tomcat下.
  • 我们的实际Web应用程序有两个WAR文件.这些可以分为两台机器,但是现在,我们假设它们都被转储到Tomcat下.
  • 启动Tomcat以便它部署WAR

这对我们的用户来说是一个繁琐的过程,我想将它封装到一个安装程序中,并且一直在NSIS中看到这样做,这似乎有一个庞大的社区,但后来偶然发现了install4j,虽然看起来鲜为人知,但更多特定于基于java的应用程序.

只是想从更多经验丰富的用户那里得到一些平台上最佳选择的反馈.

我不想半途而废,然后意识到我选择了错误的安装平台.

nsis jprofiler install4j

5
推荐指数
1
解决办法
1090
查看次数

如何使install4j更新程序删除文件?

我们基于install4j的应用程序具有一个名为(例如foobar-1.0.jar)的第三方库

在更新的版本中,我们用foobar-1.1.jar替换了jar

install4j更新程序会添加新的jar,但不会删除旧的jar。所以现在两者都在类路径上。这使我们的应用崩溃。

如何告诉更新程序删除不再存在的文件?

install4j

5
推荐指数
1
解决办法
787
查看次数

如何在Linux中使用install4j创建守护程序用户帐户?

我有使用install4j构建的我的应用程序的Linux版本,但我不知道如何使该服务在用户帐户下运行。有推荐的方法吗?

unix daemon user-accounts install4j

5
推荐指数
1
解决办法
283
查看次数

如何为OSX签署DMG和安装程序

我已经和它斗争了很长一段时间,如果有人能帮我理解这里发生的事情,我将非常感激.

我有一个install4j项目,它为Windows和OSX创建安装程序包.我有一个Windows的常规签名证书,这没有问题.我也有Apple开发人员证书.我已将私钥从我的钥匙串导出到p12文件.我测试了生成的p12文件,以确保它与密钥库密码一起使用.证书绝对有效,因为我今天(再次)创建了它.而且,当我通过Maven运行安装程序时,它看起来好像一切都很顺利:

[INFO] Compressed media file 'Mac OS X Single Bundle':
[INFO]   Compressing files
[INFO]   Generating VM options file vmoptions.txt.
[INFO]   Signing installer
[INFO]   Signing DMG
[INFO]   Moving media files to media directory /Users/....
[INFO]   The name of the media file is my-app_macos_1_1_1.dmg.
[INFO]   The size of the media file is 4.8 MB
Run Code Online (Sandbox Code Playgroud)

这似乎很好,除了安装程序和dmg没有签名,或者至少不是有用的方式:

$ spctl -a -v target/media/my-app_macos_1_1_1.dmg
target/media/my-app_macos_1_1_1.dmg: CSSMERR_TP_CERT_EXPIRED
$ spctl -a -v /Volumes/my-app/My\ Application\ Installer.app
/Volumes/my-app/My Application Installer.app: CSSMERR_TP_CERT_EXPIRED
Run Code Online (Sandbox Code Playgroud)

证书尚未过期:

Alias name: mac developer: me myself (my …
Run Code Online (Sandbox Code Playgroud)

macos code-signing install4j

5
推荐指数
1
解决办法
3860
查看次数

我使用maven生成的jar通过install4j为我的应用创建了一个安装程序。为什么在执行.exe时找不到主类?

这是我使用maven创建jar文件的方法。

现在,对于我的JavaFX Application,我正在使用Afterburner FX Framework。现在,我需要为此应用程序创建一个安装程序,以将其部署到其他设备。我正在使用Install4j。我的步骤:

  1. mvn clean package
  2. 将生成的jar文件复制并粘贴到其他目录中
  3. 将该目录添加到install4j文件
  4. 在Java调用下的Launcher上,我选择jar文件,然后选择我的主类:BOOT-INF.classes.inc.pabacus.TaskMetrics.TaskMetricsApplication`
  5. 我生成安装程序并运行它,安装到Program文件,然后打开exe文件。

但是随后出现错误对话框:

java.lang.NoClassDefFoundError:BOOT-INF / classes / inc / pabacus / TaskMetrics / TaskMetricsApplication(名称错误:inc / pabacus / TaskMetrics / TaskMetricsApplication)

java installation javafx maven install4j

5
推荐指数
1
解决办法
160
查看次数

我如何强制 install4j 在更新时不覆盖特定文件

我已经创建了我的 Install4j 项目,到目前为止我对安装、卸载和更新过程感到满意。但是,出现了一种新情况,当用户更新产品的新版本时,我需要阻止 install4j 覆盖用户安装目录中的特定文件。谁能告诉我如何强制/配置 install4j 以便在更新现有安装时不会覆盖特定文件。

例如,当我安装我的应用程序时,我将一个数据库文件 (mydb.script) 作为安装文件的一部分,以便用户可以使用一个数据库。我发现当我创建应用程序的新版本并再次安装时,install4j 已经检测到我安装了以前的版本并询问我是否要更新该版本。我点击“是”,它就完成了它的工作。但是,在此过程中,它实际上用安装程序内部的数据库覆盖了以前的数据库(导致用户丢失了自第一次安装以来输入的所有数据)。我不想要这种行为。我想告诉 install4j 不要覆盖这个特定的文件(如果它存在)。

java install4j

4
推荐指数
1
解决办法
1045
查看次数

在install4J中自动启动

是否有集成功能可以让我在Install4J安装程序完成后自动启动程序?理想情况下,添加"安装完成后启动"按钮.

我看到安装程序中的完成表单上有字段"激活后脚本"属性,但不确定是否可以使用它.

install4j

4
推荐指数
1
解决办法
1111
查看次数

如何自定义install4j创建的installer .exe的图标?

每当我通过运行install4j scrip创建安装程序可执行文件时,它总是包含默认图标.如何更改相同内容以提供公司的图标?我正在使用Windows平台.

install4j

4
推荐指数
1
解决办法
814
查看次数

是否可以从"许可协议"窗口中删除"install4j"文本

Install4j允许您在安装期间包含许可协议窗口.不幸的是,Next,Cancel按钮上面的行有一个前缀"install4j"的字样.有什么办法可以删除吗?(注意:目标窗口似乎做了同样的事情.所以无论如何都要从所有拥有它的窗口中删除这个行前缀?)

install4j

3
推荐指数
1
解决办法
455
查看次数

使用 Install4J 使用 EV-Certificate 签署可执行文件

我们公司从GlobalSign订购了 EV 证书。

之前我们有一个可以在 Install4J 中使用的 p12 文件形式的普通代码签名证书。

现在,有了新证书,我们就没有证书文件了,只有一个 USB 令牌。

是否有内置方法可以使用 USB 令牌来签署可执行文件/jar?或者我是否需要使用媒体向导的“可执行处理”步骤,如此处提到

也许有一种方法可以从一台机器(如 macos)上签署所有安装程序(win、mac、linux)?

java code-signing signtool install4j

3
推荐指数
1
解决办法
1090
查看次数