- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
更新:
我发现问题出在 Inno Setup 上。安装程序正在创建,但 Inno Setup 会自动尝试运行需要管理员权限的安装程序。由于未授予这些权限,因此安装程序失败。
如果我将权限授予使用 Inno Setup 准备的任何其他安装程序,则在授予权限几分钟后会创建 native 包。但是,如果我在更长的时间后尝试,它会再次给出错误。
我正在尝试将我的 exe
文件从我的 JavaFX 项目打包到 Eclipse 中。我使用 JDK 1.8.0_25
和 Inno Setup 5 通过 build.xml
Ant 脚本进行创建。
我的代码到达 fx:deploy
部分,我在尝试使用 Inno Setup 创建 exe
文件时遇到此错误。我的 Inno Setup 在系统路径中,当我检查任务管理器时,我看到实际正在使用 Inno Setup。
这是我得到的完整堆栈跟踪:
Using base JDK at: C:\Program Files\Java\jdk1.8.0_25\jre\..\jre
[fx:deploy] java.io.IOException: Exec failed with code 2 command [[C:\Program Files (x86)\Inno Setup 5\iscc.exe, /oE:\Code\Java\ProjectHome\build\deploy\bundles, C:\Users\SHUBHA~1\AppData\Local\Temp\fxbundler7925821782057479088\images\win-exe.image\ProjectHome.iss] in C:\Users\SHUBHA~1\AppData\Local\Temp\fxbundler7925821782057479088\images\win-exe.image
[fx:deploy] at com.oracle.tools.packager.IOUtils.exec(IOUtils.java:165)
[fx:deploy] at com.oracle.tools.packager.IOUtils.exec(IOUtils.java:138)
[fx:deploy] at com.oracle.tools.packager.IOUtils.exec(IOUtils.java:132)
[fx:deploy] at com.oracle.tools.packager.windows.WinExeBundler.buildEXE(WinExeBundler.java:533)
[fx:deploy] at com.oracle.tools.packager.windows.WinExeBundler.bundle(WinExeBundler.java:349)
[fx:deploy] at com.oracle.tools.packager.windows.WinExeBundler.execute(WinExeBundler.java:172)
[fx:deploy] at com.sun.javafx.tools.packager.PackagerLib.generateNativeBundles(PackagerLib.java:511)
[fx:deploy] at com.sun.javafx.tools.packager.PackagerLib.generateDeploymentPackages(PackagerLib.java:476)
[fx:deploy] at com.sun.javafx.tools.ant.DeployFXTask.execute(DeployFXTask.java:265)
[fx:deploy] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
[fx:deploy] at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
[fx:deploy] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[fx:deploy] at java.lang.reflect.Method.invoke(Method.java:483)
[fx:deploy] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[fx:deploy] at org.apache.tools.ant.Task.perform(Task.java:348)
[fx:deploy] at org.apache.tools.ant.Target.execute(Target.java:435)
[fx:deploy] at org.apache.tools.ant.Target.performTasks(Target.java:456)
[fx:deploy] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
[fx:deploy] at org.apache.tools.ant.Project.executeTarget(Project.java:1364)
[fx:deploy] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[fx:deploy] at org.eclipse.ant.internal.launching.remote.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:36)
[fx:deploy] at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
[fx:deploy] at org.eclipse.ant.internal.launching.remote.InternalAntRunner.run(InternalAntRunner.java:452)
[fx:deploy] at org.eclipse.ant.internal.launching.remote.InternalAntRunner.main(InternalAntRunner.java:139)
BUILD FAILED
E:\Code\Java\ProjectHome\build\build.xml:173: Error: Bundler "EXE Installer" (exe) failed to produce a bundle.
Total time: 2 minutes 45 seconds
谁能帮忙解决这个问题?
最佳答案
那不是,你要做的是注册ant编译器的类路径。这样做:
1. Open Netbeans and click the Tools link at the top or press Alt-t
2. Click options in the drop down menu from the tools or press Alt-o
3. Click Java on the top bar, it is the Java logo
4. Make sure you are on the ant tab, and your Ant-home has either,
the built in Ant compiler(comes with netbeans, you do not need to set),
or a custom one. On my computer, One virtual Machine says the Netbeans folder,
and my Production Machine says, C:\Ant. Since I downloaded,
and installed ant compiler myself for my production machine, more control! :D
5. Then make sure the Verbosity Level says Normal.
6. Then you will see a classpath box, it may be empty but should not be.
7. For mine, I have a few JDBC connectors for my database integration,
and the ones you need to add, which are your project you are trying
to make the installers for. So for my project it is a timeclock manager,
and I named it TimeClock, but I also use another project as a library in
that project, so I have 3 things total in my Classpath.
您要确保为该项目添加任何包含 main 方法的包,所以我的有 2 个,因为其中一个只是库,所以添加到类路径中。
8. My Classpath looks like this
C:\Program Files (x86)\MySQL\MySQL Connector J\mysql-connector-java-5.1.34-bin.jar
C:\Users\{my user Name}\Documents\NetBeansProjects\TimeClock\src\JFXPrint
C:\Users\{my user Name}\Documents\NetBeansProjects\TimeClock\src\timeclock
9. Yours should look like this, if you only have one project
C:\Users\{你的用户名}\Documents\NetBeansProjects\{你的项目名}\src\{你的包名}
9(mine). My Project name is TimeClock and My package names,
where my main's are located are, JFXPrint and timeclock.
10. YOUR DONE! Click Apply, Click OK, and restart the IDE. Then open it back up
and right click the project and package as->All installers or
whatever you want to do.
我希望这会有所帮助,我在遇到这个问题时用谷歌搜索了这个问题,但没有人知道该怎么做。当我添加我的图标 Logo 时,我终于找到了它。我意识到我的类路径是空的,只为一个项目修复了它,我不知道将类路径设置为所有 NetBeansProject 文件夹是否有效,但我认为这不是一个好方法,全局变量永远不会是!由于我没有看到任何答案,我认为很多人都遇到了这个问题,所以我决定在找到解决方法后发布答案。
祝你好运,编程愉快!
关于java - 使用 Inno Setup native 打包 fx-jar 时出错 [fx :deploy] java. io.IOException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28071462/
我需要编辑或替换 About Setup 中的文本Inno Setup 的对话框文本。 这是一张图片: 在互联网上查看我得到了这个代码: [Files] Source: CallbackCtrl.dl
我最近发现一些旧的 PC 游戏可以在我的 Windows 10 64 位计算机上玩。我查看了各种在线资源以使游戏正常运行。现在我有兴趣为使游戏正常运行所采取的所有各种步骤创建一个自定义安装程序。我成功
是否可以获得用于 Inno Setup 安装程序的 Inno Setup 版本号? 我找不到记录的开关来返回其版本号(例如 5.5.6),而且似乎没有暴露给 Inno Setup 脚本的预定义版本常量
如何更改 setup-*.bin(Inno Setup 内部压缩存档文件)的名称、扩展名和位置 默认存档位置:{src} 我要的位置:{src}\Data(Data是一个文件夹。) 最佳答案 有很多方
这是用于 Inno Setup 的 [Setup] 部分中的 LicenseFile 属性的标准 RTF 文档: 是否可以向此页面添加打印按钮以触发打印许可协议(protocol)? 我看到了一个类似
我有一个 Inno Setup 脚本可以将我的应用程序变成一个 exe。 当我使用 Inno Setup 版本 6 编译代码时,输出文件大小为 110MB(如 Windows Explorer 大
编译了 Inno Setup 脚本 (IS v5.4.2),但是当运行生成的 Setup.exe 时,出现了一个错误对话框,内容如下: 内部错误:ExtractTemporaryFile:找不到文件“
Inno Setup - 我想创建一个类似于屏幕截图的安装程序。 安装程序应在左侧突出显示当前步骤。 如何实现? 最佳答案 @Bill_Stewart 是正确的,普通的 Inno Setup 不提供如
图像作为安装程序背景。如何使用 inno 5.5.9 做到这一点? 最佳答案 我认为这在 Inno Setup 中是不可能的。也许是一些 Inno Setup 克隆。 问题是Inno Setup中的所
这个问题在这里已经有了答案: Inno Setup - Signing fails with "Sign Tool failed with exit code 0x1" (2 个答案) 关闭 3 年
如何获取有关安装程序中包含的文件的信息(最后修改时间戳、文件大小)?通过使用文件的路径,很容易引用磁盘上的文件。但是当文件没有路径时,如何在安装程序中引用它呢? 当安装程序初始化时,我想检查磁盘上是否
Inno Setup 中的单词补全是如何工作的? 如果我在代码中的任何标识符或单词的中间或末尾按 Alt+Right,则没有任何反应。 我找不到任何要安装的扩展,也找不到该主题的 Internet 答
从这里开始:Inno Setup Placing image/control on custom page . 这是做我需要的: CustomPage := CreateCustomPage(wpLi
我的安装程序在组件页面中有一个可视错误。在您开始向下滚动页面之前看起来还不错,但开始看起来一团糟。 我认为问题出在代码中的某个地方,但仅在绝对干净的脚本上重新创建了组件部分,问题仍然存在。尝试更改缩放
如何在 Inno Setup 编译器中为我们的设置提供背景全屏图像。 喜欢下面这张图。 最佳答案 不要那样做。这违反了 Windows 设计指南。 无论如何,如果必须,请使用 WindowVisibl
如何在代码中使用 [Setup] 部分的值? 我怀疑我没有正确使用该工具;也许我应该以完全不同的方式来做这件事。 [Setup] MyValue=some value [code] function
如何自定义 Inno Setup 安装程序的欢迎页面? 我想创建一个类似于 Skype 安装程序的安装程序,只有 3 个页面: 带有一些选项的自定义欢迎页面 进度页 使用“运行程序”选项完成页面 但是
我已经为我想更新的程序创建了文件。 我希望在安装之前,检查程序是否也在标准目录中,如果不是,则正确的目录可以选择程序所在的位置。 我试过这个: [Files] Source: "C:\Data"; D
我想在您选择安装位置的页面之后创建一个自定义向导页面。 我已经在 InitializeWizard 中看到了如何创建自定义页面并将它们添加到向导中。程序。 我的问题是,当我创建自定义页面时,安装位置选
我已经安装了我的程序。但是如果我尝试再次安装它,它会安装并且程序被替换。 我看到这个问题 Inno Setup - How to display notifying message while ins
我是一名优秀的程序员,十分优秀!